Читайте также: |
|
Визначувані типи
Часто буває, що наперед визначених типів для опису об'єктів у програмі недостатньо. Тоді використовується механізм визначення типів.
Визначувані типи описуються програмістом за певними правилами і забезпечують гнучкість програми, яку неможливо передбачити заздалегідь.
Тому визначувані типи грають дуже важливу роль у програмуванні і особливо це стосується абстрактних типів даних.
Опис визначуваного типу
Загальна форма опису визначуваного типу має вигляд:
type d = T;
де
d – позначення визначуваного типу (індикатор типу),
Т – опис властивостей визначуваного типу.
Здебільшого визначуваний тип описується на основі наперед визначуваних або раніше визначених типів. При цьому визначуваний тип має власну множину значень, але, як правило, успадковує операції та літерали того типу, на якому він визначається. У цьому разі зазначений тип називається базовим, основним, або батьківським типом.
Класифікація відомих визначуваних типів
Використання визначуваного типу
Усі визначувані типи можна використовувати двома способами: анонімно або явно.
Визначуваний тип без утворення позначення називається анонімним типом. Щоб указати множину значень анонімних типів можна вдатися до явного використання атрибутів раніше визначених або наперед визначених типів.
Отже, анонімні типи використовуються без попереднього оголошення, безпосередньо при опису програмного об'єкту. Це дає змогу скоротити текст програми та усунути надлишкові позначення типів. Проте анонімно оголошений тип не можна використовувати при опису інших програмних об'єктів, оскільки немає позначення типу.
Підтипи
Підтип (sybtype) – це нове позначення батьківського типу та пов'язане з ним уточнення.
При описі підтипу множину значень базового типу, на якому описується визначуваний підтип може бути обмежено (уточнено) за допомогою уточнення, яке здійснюється в будь-який прийнятним для батьківського типу спосіб.
Наприклад, для типу integer це може бути перелічування значень (2, 3, 5, 7) або значення дискретного діапазону значень – як 1..100.
Операції і зображення значень підтип успадковує від батьківського типу.
Pascal:
type
MyInteger = integer;
Days = 0..6;
var
nMyDays: Days;
nУourDays: Days;
nb: MyInteger;
begin
nb:= 3;
nУourDays:= nb;
nMyDays:= nУourDays;
end.
Перелічувані типи. 1
Визначувані типи, повний набір значень яких явно перелічують в опису типу, називаються перелічуваними (enumeration type).
Значення в опису типу називається літералом перелічуваного типу. Кожний літерал у перелічуваному типі виробляє відмінне від інших літералів значення.
Наперед визначені операції відношення впорядкованості між літералами слідують порядку, що відповідає номерам їхніх позицій у переліку. Номер позиції першого літерала, а часто і його значення дорівнюють нулю, наступного – на одиницю більше і так далі.
Дата добавления: 2015-10-29; просмотров: 138 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Складений оператор | | | Устрій двовимірних мультизначень |