Cтраница 2
Директива факт является довольно мощной, и ее легко реализовать. Однако недостаток ее заключается в том, что, хотя операционное действие вызова факт может быть достаточно очевидным при рассмотрении его независимо от контекста, логический смысл исполнения программы в целом может оказаться неясным. Это средство является на самом деле слишком сильным, если его применять без всяких ограничений. [16]
Директивы по пятилетнему плану развития СССР на 1951 - 1955 гг., утвержденные XIX съездом КПСС, предусматривали быстрый рост социалистической экономики на основе преимущественного развития тяжелой промышленности, подъем материального благосостояния и культурного уровня народа. [17]
Директивы предусматривают улучшение размещения производительных сил, комплексное развитие и специализацию хозяйства союзных республик и экономических районов. Для Башкирской АССР это означает ускоренные темпы роста ведущих отраслей промышленности - химии, машиностроения, энергетики. [18]
Директива THREADPRIVATE список имен соммом-блоков) определяет глобальную политику в отношении переменных, входящих в именованные comoN - блоки. Переменные этих COMMON-блоков, оставаясь глобальными в рамках одного подпроцесса, будут недостижимы из других подпроцессов. Директива THREADPRIVATE должна размещаться в области последовательного кода, вне блоков действия директив параллелизации. Так как параметрами этой директивы являются имена coMMON - блоков, она должна находиться в области их видимости. [19]
Директивы включают или выключают выравнивание полей типов записей ( см. разд. Директивы А обеспечивают выравнивание полей записей и классов, которые объявлены без модификатора packed. Это обеспечивает более быструю работу с записями и свойствами. При наличии директивы А - или А1 выравнивание полей никогда не происходит, как будто все поля packed. При А2 поля выравниваются по границам слов ( word), при А4 - по границам удвоенных слов, при А8 или А по границам четырех слов. [20]
Директивы разрешают или запрещают проверку утверждений, влияют на работу процедуры Assert ( см. разд. По умолчанию действует директива С и процедура Assert генерирует исключение EAssertionFailed, если проверяемое утверждение ложно. [21]
Директивы действуют на весь файл исходного кода независимо от того, в каком месте файла они расположены. [22]
Директива DENYPACKAGEUNIT ON не позволяет включить тот модуль, в котором она записана, в пакет. [23]
Директивы определяют, какому типу соответствует ключевое слово string. При директиве Н это ключевое слово соответствует длинным динамически размещаемым в памяти строкам AnsiString. С этой директивой компилированы все компоненты библиотеки Delphi и с ней же должны компилироваться новые компоненты, создаваемые пользователем. [24]
Директивы включают или выключают автоматический контроль результата вызова процедур ввода-вывода. EInOutError и в его свойство errorcode заносится код ошибки. [25]
Директивы разрешают или запрещают перекомпиляцию модуля. Запрещать перекомпиляцию имеет смысл в случаях, если перекомпиляция данного модуля должна быть проведена позднее. [26]
Директивы разрешают или запрещают генерацию информации о локальных символах. Информация включает имена и типы всех локальных переменных и констант модуля. [27]
Директива обеспечивает во время компиляции генерацию сообщения с заданным текстом, подобного сообщениям компилятора. Необязательный второй параметр директивы может отсутствовать, или принимать значение HINT, WARN, ERROR или FATAL. Это значение просто определяет, с какой пометкой будет выдано сообщение. [28]
Директива О обеспечивает компиляцию с оптимизацией: размещение переменных в быстрых регистрах и многое другое. Оптимизация повышает эффективность программы, иногда сокращает выполняемый файл, но может затруднять отладку из-за устранения из кода некоторых операторов и переменных. Так что во время отладки оптимизацию полезно отключать, но при компиляции окончательного варианта программы оптимизацию обязательно надо включать. [29]
Директивы О действуют только целиком на функцию или процедуру. [30]