Перечисляемые типы данных
Lazarus IDE: Основы программирования в Windows
Несмотря на то, что всё потихоньку уходит в сеть, программирование для настольных компьютеров остаётся востребованным. И будет таковым ещё долго. Ну а самая распространённая операционная система для настольных компьютеров – это по-прежнему Windows. Поэтому любой программист, даже если он собирается стать веб-разработчиком, должен знать хотя бы основы создания программ для Windows. Подробнее... |
Перечисляемый тип - это ограниченная упорядоченная последовательность скалярных констант, составляющих данный тип. Мы пока не знаем, что такое константы. Но если говорить кратко, то константа - это некое постоянное значение.
Значение каждой константы задается именем константы. Имена отдельных констант в перечисляемом типе отделяются друг от друга запятыми. Все константы вместе, входящие в перечисляемый тип, заключается в круглые скобки.
Например
(Зима, Весна, Лето, Осень)
Однако Free Pascal русских букв не понимает, поэтому в реальной программе все слова должны состоять из английских символов, например
(Winter, Spring, Summer, Autumn)
Ещё раз напоминаю: учите английский.
Зачем нужны перечисляемые типы? В основном, для удобства. Согласитесь, иногда удобнее оперировать осмысленными названиями, чем цифрами.
Пока не будем вдаваться в подробности, потому что начинающим это может показаться сложным. Попробуйте просто скопировать исходный код из листинга 13.4 в свою программу и посмотрите, что получится.
program enum; {$mode objfpc}{$H+} uses {$IFDEF UNIX}{$IFDEF UseCThreads} cthreads, {$ENDIF}{$ENDIF} Classes { you can add units after this }; type TSeasons = (Winter, Spring, Summer, Autumn); var Seasons : TSeasons; begin Writeln('Seasons : ', Low(Seasons), '..', High(Seasons)); ReadLn; end.
Здесь появились неизвестные для вас ключевые слова, но сегодня я давать подробных пояснений не буду. Скажу только, что слово type создаёт пользовательский тип данных.
Создайте программу из листинга 13.4. Запустите её и посмотрите, что получится. Попытайтесь догадаться, почему программа выводит именно такой результат. Попробуйте создать свой перечисляемый тип.