Поделиться через


Интерпретация оператора индекса

Как и другие операторы, оператор индекса ([ ]) может быть переопределен пользователем. Поведение оператора индекса по умолчанию, если он не перегружен, — совмещать имя массива и индекс с помощью следующего метода.

*((имя-массива) + (индекс))

Как всегда в добавлениях, включающих типы указателей, масштабирование выполняется автоматически с учетом размера типа. Следовательно, результирующее значение — не индекс байтов из источника имя-массива; а элемент массива с порядковым номером индекс. (Дополнительные сведения об этом преобразовании см. в разделе Операторы добавления).

Аналогично, для многомерных массивов адрес извлекается с использованием следующего метода.

((имя-массива) + (индекс1 макс* макс3*...максn)               + индекс2 * макс3...макс*n)                    . . . + индексn))

См. также

Ссылки

Массивы (C++)