Кроме стандартных типов данных язык Delphi поддерживает типы, определенные программистом. Новый тип данных определяется с помощью зарезервированного слова type, за которым следует идентификатор типа, знак равенства и описание:
type newTypeName = type;
newTypeName – это корректный идентификатор, type – это раннее определенный тип. Описание завершается точкой с запятой.
Type TUnicode = WideChar; // TUnicode тождественен типу WideChar TFloat = Double; // TFloat тождественен типу Double |
При таком описании в программе создается новый тип данных, тождественный уже существующему типу данных, компилятор не делает никаких различий между ними (ни на этапе компиляции, ни на этапе исполнения программы). По сути, создается не новый тип данных, а псевдоним (« другое имя») для уже существующего типа данных.
Для того чтобы создать действительно новый тип данных, обладающий свойствами уже существующего типа данных, но не тождественный ему, необходимо использовать зарезервированное слово type:
type newTypeName = type type;
Различие между таким способом создания типа и обычным (без слова type) проявится при изучении массивов, записей и классов, при передаче var – параметров в подпрограммы.
Нетрудно заметить, что идентификаторы новых типов в примере начинаются заглавной буквой T (первая буква слова type). Такое соглашение о типах программиста принято разработчиками среды Delphi. Не являясь строгим, оно способствует более легкому восприятию исходного текста программы.
Синтаксическая конструкция type позволяет создавать новые порядковые типы: перечисляемые типыи интервальные типы.