Возвращает ссылку на смещение памяти от адреса
Синтаксис
Использование
result = lhs [ rhs ]
Параметры
lhs
Базовый адрес.
rhs
Знаковое смещение от lhs.
T
Любой тип данных.
Описание
Этот оператор возвращает ссылку на значение , которое находится на некотором
смещении от базового адреса в памяти. Это по существу сокращенный вариант "
*(lhs + rhs)";оба
делают то же самое. Арифметической указатель любого типа
Pointer
может индексироваться , за исключением
Any Pointer.
Кроме того, как с арифметикой указателя, все зависит от пользователя
чтобы сделать конечно значимым доступ к данным.
При индексировании ' 2-мерного ' указателя (т.е.
T Ptr Ptr),
Первый (крайний слева) индекс применяется перед вторым: например,
Pt[I1][I2] =
*(Pt[I1] + I2) =
*(*(Pt + I1) + I2)
В целом, при использовании 'n мерного ' указателя:
Pt[I1][I2].....[In],
порядок индексов (слева направо) соответствует порядку разыменования.
Пример
'' инициализируем массив с 5 элементами
Dim array(4) As Integer = { 0, 1, 2, 3, 4 }
'' указатель на первый элемент
Dim p As Integer Ptr = @array(0)
'' используем указатель индексации к элементам массива
для вывода
For index As Integer = 0 To 4
Print p[index];
Next
Print
Вывод
0 1 2 3 4
Отличия от QB
См. также