Учебник по Delphi 4.0 | страница 17



Type CharSet = set of AnsiChar; // Тип множества символов. ANSI.

var MyAlphaSet: CharSet; // Переменная типа CharSet.

Переменная set может содержать все элементы множества или не содержать ни одного. При присвоении значения переменной множественного типа элементы множества (порядковые значения) указываются в квадратных скобках:

MyAlphaSet:= ['А', 'Е', 'Г, 'О', 'U', 'Y']; // Все прописные гласные.

Пустые квадратные скобки задают пустое множество, не содержащее ни одного элемента. Это относится ко всем множественными типам.

Совет: Во многих языках структурный множественный тип отсутствует. Вместо него можно применять что-либо наподобие битовых образов или битовых полей.

Файловый тип

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

file of Typel // Файл определенного типа, содержащий

// записи фиксированной длины.

file // Файл без типа или „блочный“.

textfile // Файл с записями переменной длины, разделенными символами CR

//и LF („возврат каретки“ и „новая строка“).

Механизм ввода-вывода информации как никакой другой аспект программирования зависит от языка и реализации. В большинстве случаев предполагается, что программисту незачем вникать во внутреннюю структуру переменных, управляющих вводом-выводом, и при передаче информации следует полностью полагаться на предназначенные для этого процедуры. Их реализация должна оставаться чем-то наподобие черной магии. В Basic файлы обозначаются числовыми значениями — дескрипторами. В C/C++ программисты манипулируют указателями на структуру FILE. И только в Delphi файловая структура — это переменная.

Указательные типы

Переменная указательного типа содержит значение, указывающее на переменную обычного типа — адрес этой переменной (табл. 1.8).

pointer // Указатель без типа.

^typel // Указатель с типом.

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

Только исходный тип указателей может совпадать с собственно типом.

Указатели и адресные функции

Информация, содержащаяся в переменной указательного типа, — это адрес некоторого участка в машинной памяти. Эти значения задаются во время работы программы и могут меняться от одного запуска к другому. Следующие функции обеспечивают доступ к адресной информации в программе и тестирование переменных-указателей.