Иллюстрированный самоучитель по Turbo Pascal

Типизированные константы

В Турбо Паскале допускается использование типизированных констант. Они задаются в разделе объявления констант следующим образом:

<идентификатор>: <тип> = <значение>

Здесь:

  • <идентификатор> – идентификатор константы;
  • <тип> – тип константы;
  • <значение> – значение константы.

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

Типизированные константы могут быть любого типа, кроме файлов. Нельзя также объявить типизированную константу-запись, если хотя бы одно из ее полей является полем файлового типа.

Поскольку типизированная константа фактически не отличается от переменной, ее нельзя использовать в качестве значения при объявлении других констант или границ типа-диапазона.

Константы простых типов и типа String

Объявление таких констант обычно не вызывает трудностей, так как в качестве их значения используются нетипизированные константы или их идентификаторы. Примеры объявлений:

type
colors = (white, red, black); { – Правильные объявления: – }
const
CurrCol colors = red;
name String = 'Вирт Н.';
year Word =1989;
x Real = 0.1;
min Integer = 0;
max Integer =10;
days 1..31 = 1;
answer Char = ' Y'; {--- – Неправильные объявления: --- – }
mass: array [min..max] of Real;
 {Нельзя использовать типизированные константы в качестве границ диапазона}
a,b,c: Byte = 0; {Нельзя использовать список идентификаторов}
var
NameF: String [22] = 'prog.pas'; {Нельзя объявлять типизированную константу в разделе переменных}
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.