Реферат: Типы данных в Object Pascal
3. Множественные типы
Множественные типы принадлежат к несколько непривычным и сравнительно редко используемым средствам языка Паскаль. Однако в ряде случаев использование множественных типов позволяет повысить компактность и наглядность программ.
Значения множественного типа так же, как и массивы, строятся из нескольких значений одного (базового) типа. Однако в отличие от массивов и записей значение множественного типа может содержать любое количество различных элементов базового типа - от ноля элементов (пустое множество) до всех возможных значений базового типа. Иными словами, возможными значениями переменных множественного типа являются все подмножества значений базового типа.
Синтаксис описания некоторого множественного типа имеет вид:
Type
<имя типа> = setof <базовый тип>;
Здесь:
<имя типа> - правильный идентификатор языка;
set, of - зарезервированные слова (множество, из);
<базовый тип> - базовый тип элементов множества, в качестве которого может использоваться любой порядковый тип, кроме WORD, INTEGER, LONGINT (т.е. типы BYTE и CHAR, перечислимые типы, а также ограниченные типы, образованные из них).
Пример:
Type
digitChar = set of ‘0’..’9’;
digit = set of 0..9;
elemColor = (Red, Yellow, Blue);
color = set of Color;
Var
s1, s2, s3: digitChar;
s4, s5, s6: digit;
myColor: Color;
Примечания
1. Все значения базового типа, образующие конкретные значения множественного типа, должны быть различны.
Например, не может быть множества: 1, 2, 2.
2. Порядок “расположения” элементов в множестве не имеет значения.
Множества:
1, 2, 3
3, 2, 1
одинаковы.
Это соответствует принятой в математике трактовке множества как бесповторной неупорядоченной совокупности объектов.