Типизированные константы
В Турбо Паскале допускается использование типизированных констант. Они задаются в разделе объявления констант следующим образом:
<идентификатор>: <тип> = <значение>
Здесь:
- <идентификатор> – идентификатор константы;
- <тип> – тип константы;
- <значение> – значение константы.
Типизированным константам можно присваивать другие значения в ходе выполнения программы, поэтому фактически они представляют собой переменные с начальными значениями. Типизированная константа приобретает указанное в ее объявлении значение, т.е. инициируется, лишь один раз: к моменту начала работы программы. При повторном входе в блок (процедуру или функцию), в котором она объявлена, инициация типизированной константы не производится и она сохраняет то значение, которое имела к моменту выхода из блока.
Типизированные константы могут быть любого типа, кроме файлов. Нельзя также объявить типизированную константу-запись, если хотя бы одно из ее полей является полем файлового типа.
Поскольку типизированная константа фактически не отличается от переменной, ее нельзя использовать в качестве значения при объявлении других констант или границ типа-диапазона.
Константы простых типов и типа 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'; {Нельзя объявлять типизированную константу в разделе переменных}