1.2.40. $I или $INCLUDE : Подключить файл |
Вверх Предыдущий Следующий |
Директива {$I ИмяФайла} или {$INCLUDE ИмяФайла} указывает компилятору, что следующие операторы нужно читать из файла ИмяФайла. Операторы из этого файла будут вставлены в код, как если бы они имелись в текущем файле. Если файл с указанным именем существует, то он будет включен в текст программы. Если расширение не указано, компилятор добавит к файлу ИмяФайла расширение .pp.Другие файлы с этим именем и с другими расширениями не ищутся. Имя файла может быть помещено в одинарные кавычки, они не рассматриваются как часть имени файла. Если имя файла содержит пробел, то оно должно быть заключено в одинарные кавычки Директива {$I 'my file name'} пытаться включить файл my file name или my file name.pp. А директива {$I my file name} попытается включить файл my или my.pp. Если вместо имени файла будет звездочка (*), то компилятор будет использовать имя модуля или имя программы в качестве имени файла и попытаться добавить его содержимое. Следующий код unit testi; будет включает в себя файл testi или testi.pp, если они существуют. Type Следует быть осторожным с этим механизмом, потому что имя модуля уже должен соответствовать имени файла модуля, а это будет рекурсивное включение модуля. Подключаемые файлы могут быть вложенными, но не бесконечно глубоко. Количество файлов ограничено количеством файловых дескрипторов, доступных компилятору Free Pascal. В отличие от Turbo Pascal, подключаемые файлы могут составлять сквозные блоки, то есть блок кода может начаться в одном файле (с ключевого слова Begin), а закончиться в другом файле (ключевым словом End). Наименьший элемент в подключаемом файле должен быть лексемой, то есть идентификатор, ключевое слово или оператор. Компилятор будет искать подключаемые файлы в следующих местах: 1.Путь, указанный в имени подключаемого файла 2.Каталог, где находится текущий исходный файл 3.Путь, указанный в настройках для подключаемых файлов Каталоги, где будет выполняться поиск подключаемых файлов, можно добавить с помощью опции командной строки -Fi. |