Язык программирования Оберон-2

Тип указатель



Тип указатель

Переменные-указатели типа P принимают в качестве значений указатели на переменные некоторого типа T. T называется базовым типом указателя типа P и должен быть типом массив или запись. Типы указатель заимствуют отношение расширения своих базовых типов: если тип T1 - расширение T и P1 - это тип POINTER TO T1, то P1 также является расширением P.

ТипУказатель = POINTER TO Тип.

Если p - переменная типа P = POINTER TO T, вызов стандартной процедуры NEW(p) (см. ) размещает переменную типа T в свободной памяти. Если T - тип запись или тип массив с фиксированной длиной, размещение должно быть выполнено вызовом NEW(p); если тип T - n-мерный открытый массив, размещение должно быть выполнено вызовом NEW(p, e0, ..., en-1), чтобы T был размещен с длинами, заданными выражениями e0, ..., en-1. В любом случае указатель на размещенную переменную присваивается p. Переменная p имеет тип P. Переменная p^ (динамическая переменная), на которую ссылается p, имеет тип T.
     Любая переменная-указатель может принимать значение NIL, которое не указывает ни на какую переменную вообще.



Содержание раздела