Cтраница 2
В этой главе описываются константы и переменные в синтаксисе Турбо Паскаля. Во многих случаях правила объявления констант и переменных значительно расширяют стандарт Паскаля и предоставляют программисту нетрадиционные способы обработки данных. Здесь же будут подробно рассмотрены совмещение переменных и описание переменных со стартовыми значениями. [16]
При объявлении массива удобно использовать именованные константы. Именованная константа объявляется в разделе объявления констант, который обычно располагают перед разделом объявления переменных. [17]
Такое значение может, конечно, быть и другой процедурной переменной, но может так же быть и идентификатором процедуры или функции. В этой ситуации объявление процедуры или функции можно рассматривать как особый вид объявления константы, значением которой является процедура или функция. [18]
Константы и константные выражения могут использоваться непосредственно в тексте программы в любых операторах и выражениях. Константы ( именованные константы) могут объявляться с помощью ключевого слова const. Это слово начинает раздел объявления констант. [19]
Если объявляется переменное поле, то перед его именем не обязательно ставить ключевое слово var. Если же объявляется константа, то перед ее именем надо ставить ключевое слово const. Это слово открывает раздел объявления констант. Раздел заканчивается, как только встречается ключевое слово, которое не может быть идентификатором константы. [20]
В этой главе введены наиболее часто используемые типы данных ( и связанные с ними операторы), определенные в языке Модула-2. Этих типов данных достаточно для большинства обычных задач программирования. Типы данных, более сложные, чем те простые, которые введены в этой главе, а также типы, определяемые пользователем, будут рассмотрены в гл. Помимо определения типов данных, были даны правила объявления констант и переменных. Наконец, были объяснены правила, касающиеся области действия идентификаторов в программе. [21]
После объявления поля Mode начинается новый раздел вложенных объявлений типов. В нем объявлен вложенный класс NestedClass. В данном случае ее имя специально сделано идентичным константе класса BaseClass, чтобы потом можно было показать различный доступ к этим переменным, но, конечно, в реальных классах таких совпадений имен допускать не надо. Затем в классе NestedClass объявлено поле NestedField. Спецификатор var помещен перед этим объявлением, чтобы прервать раздел объявления констант. [22]
Альтернативой, обычно применяемой, будет задание этих значений как глобальных констант в модуле CRT. Показанный здесь вариант используется в большом модуле CRT, выполняемом на двух различных типах ЭВМ, оба из которых используют одну и ту же операционную систему и реализацию языка. Хотя значения этих параметров различны для этих двух систем, например для TermHeights 24 и 25, а для TermWidths 40 ( 80) и 80, этот подход позволяет на обеих ЭВМ применять в точности один и тот же текст программы. В первоначальном модуле, из которого это получено, различия в объявлении констант были бы разительны. [23]
При разработке программы внесение в нее изменений может потребовать соответствующего изменения границ массива. Верхняя и нижняя границы индекса обычно встречаются во многих местах в программе, и их иногда трудно обнаружить. Применение констант упрощает эту задачу. Границы массива должны быть присвоены константе, как рассматривалось в гл. Тогда, если нужно изменить границы, можно изменить их по всей программе, просто меняя объявление константы. [24]