Раздел 6.6 - Записи

Типы могут быть сложным сочетанием других типов; основным методом объединения типов является объединение их с помощью записей (которые в основном идентичны типу record в Pascal и struct в языке C). Вот пример, записи, которую можно использовать для хранения дат:

 type Date is
  record
   Day   : Integer range 1 .. 31;
   Month : Integer range 1 .. 12;
   Year  : Integer range 1 .. 4000 := 1995;
  end record;

Компонент записи `Year' содержит пример `инициализирующего выражения'. Любой объект данного типа автоматически содержит начальные значения, заданные в инициализирующих выражениях.

Создание переменных типа `запись' осуществляется так же, как и создание любого другого типа. Обращение к компоненту записи производится с помощью имени переменной, точки и имени компонента записи. Например, создадим переменную с именем Ada_Birthday, и присвоим ее компонентам значения 5December 10, 1815:

 procedure Demo_Date is
   Ada_Birthday : Date;
 begin
   Ada_Birthday.Month := 12;
   Ada_Birthday.Day   := 10;
   Ada_Birthday.Year  := 1815;
 end Demo_Date;

Упражнение:

Пусть имеется следующий тип записи:

 type Complex is
  record
    Real_Part, Imaginary_Part : Float := 0.0;
  end record;

и описана переменная:

  X : Complex;

Как присвоить компоненту Real_Part переменной X значение 1?

  1. Complex.X.Real_Part := 1.0;
  2. X.Real_Part := 1.0;
  3. Real_Part.X := 1.0;

Вы можете также:

PREVIOUS Перейти к предыдущему разделу

NEXT     Перейти к следующему разделу

OUTLINE  Вернуться к содержанию Урока 6

David A. Wheeler (dwheeler@ida.org)

Перевод: Юрий Королев   Общая редакция перевода: Г.Ю. Сисюк

Исходная копия этого документа находится по адресу "http://www.adahome.com/Tutorials/Lovelace/s6s6.htm".

Исходная копия перевода размещена на сайте http://www.ada-ru.org