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

         

Тип запись



Тип запись

Тип запись - структура, состоящая из фиксированного числа элементов, которые могут быть различных типов и называются полями. Объявление типа запись определяет имя и тип каждого поля. Область действия идентификаторов полей простирается от точки их объявления до конца объявления типа запись, но они также видимы внутри обозначений, ссылающихся на элементы переменных-записей (см. ). Если тип запись экспортируется, то идентификаторы полей, которые должны быть видимы вне модуля, в котором объявлены, должны быть помечены. Они называются доступными полями; непомеченные элементы называются скрытыми полями.

ТипЗапись = RECORD ["(" БазовыйТип ")"] СписокПолей {";" СписокПолей} END.
БазовыйТип  = УточнИдент.
СписокПолей   = [СписокИдент ":" Тип].

Тип запись может быть объявлен как расширение другого типа запись. В примере

T0 = RECORD x: INTEGER END
T1 = RECORD (T0) y: REAL END

T1 - (непосредственное) расширение T0, а T0 - (непосредственный) базовый тип T1 (см. Прил. A). Расширенный тип T1 состоит из полей своего базового типа и полей, которые объявлены в T1. Все идентификаторы, объявленные в расширенной записи, должны быть отличны от идентификаторов, объявленных в записи(записях) ее базового типа.

Примеры объявлений типа запись:

RECORD
     day, month, year: INTEGER
END

RECORD
     name, firstname: ARRAY 32 OF CHAR;
     age: INTEGER;
     salary: REAL
END



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