Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kospekt_lektsy_programmirovanie.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
462.78 Кб
Скачать

1. Запис та його оголошення

Запис — це структурований тип даних, що являє собою об'єднання фіксованої кількості змінних одного або декількох типів. Змінні, що входять до складу запису, називаються його полями.

Можливість інтегрування в один запис різнотипних компонентів становить головну відмінність запису від масиву. На відміну від терміна «масив», терміном «запис» позначається саме тип даних, а дані цього типу називаються екземплярами записів. Таке застосування термінології пояснюється тим, що для типу запису, як правило, оголошується окремий ідентифікатор, а тип масиву найчастіше оголошується неявно, разом із оголошенням змінної масиву.

Оголошення записів як типів даних здійснюють в розділі type Pascal-програми. Після цього їх можна використовувати для оголошення змінних типу запису - це робиться в розділі оголошення змінних var. Оголошення запису та змінної типу запису має такий вигляд:

type <ім'я типу> = record                     <ім'я поля1>:<тип>;                     ..................                     <ім'я поляN>:<тип>;                    end; var <ім'я змінної>:<ім'я типу>;

Оголошення типу розпочинається ключовим словом record і завершується словом end. Між цими словами міститься список оголошень полів. Кожне поле оголошується як ідентифікатор змінної певного типу. Ім'я поля має бути унікальним в межах запису. Наведемо приклади оголошень записів і змінних відповідних типів.

2. Доступ до компонентів та операції над записами

Імена полів різних записів можуть збігатися. Тому звернення до компонентів записів здійснюється через складене ім'я, що має такий синтаксис:

<ім'я змінної типу запису>.<ім'я компонента>

Крапку, що записується між іменем запису та іменем компонента, інколи називають символом оператора доступу. Якщо екземпляр деякого запису є полем іншого запису, то складені імена полів такого екземпляра міститимуть декілька символів оператора доступу. Складність доступу до компонентів записів може бути зменшена, якщо використати конструкцію with, яку ще називають оператором приєднання. Синтаксис конструкції with такий:

with <список змінних типу запис> do begin   <оператори> end;

В операторах всередині конструкції with замість імен змінних типу запис вказуються лише імена полів. Дія однієї конструкції with розповсюджується на вміст лише одного складеного оператора і лише на ті записи, імена яких були вказані у списку змінних типу запис.

Над компонентами записів можна здійснювати будь-які операції, що є допустимими для типів цих компонентів. Для екземплярів запису як цілісних об'єктів означена тільки одна операція — присвоєння. Слід пам'ятати, що присвоєння значення змінній деякого типу запису призведе до присвоєнь значень всім полям цієї змінної. Присвоєння значень змінних типу запису іншим змінним можливе тільки за умови їх однорідності, тобто змінні, що беруть участь у присвоєнні, повинні мати однаковий склад компонентів та їх типів. Наприклад, для оголошених нижче змінних Z1 та Z2 присвоєння є коректним.

var Z1,Z2:record             str:string;             number:real;           end; begin   Z1:=Z2; end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]