|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.07.2017, 22:09 | #1 |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
Условная компиляция
Здравстствуйте!
Подскажите, плиз Если в локальной функции исользуется директива {Q-} нужно ли отменять их {Q+} вообще или в конце функции ? Пример Код:
Последний раз редактировалось Turbine; 01.07.2017 в 22:11. |
02.07.2017, 01:39 | #2 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
Да, надо отключать вручную. И директивы с долларом пишутся {$Q+}
Локальные директивы действуют с того места где встретились и до самого конца компиляции (или до места где их отключат вручную). Причём, они начинают действовать не с места когда код начал выполнятся в рантайме, а с места где их нашёл компилятор. Так что даже если программа не дошла до того места где эта директива была прописана в исходнике, то она уже может быть активна (такое наблюдается, например, в оконных приложениях). Чтобы такой чертовщины не было, нужно обязательно вернуть директиву в прежнее состояние сразу после того, как дело сделано, т.е в данном случае внутри функции http://docwiki.embarcadero.com/RADSt...ler_directives Если эффекта не будет видно, то туда ещё нужно глянуть http://docwiki.embarcadero.com/RADSt...cking_(Delphi) |
02.07.2017, 05:18 | #3 |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
Спасибо!
Т.е. если в Project-Options-Compiling установлено {$Q+}, а в какой-то процедуре/функции употребляется {$Q+}, а потом {$Q-}, то после КОМПИЛЯЦИИ этой функции, все оставшиеся фцнкции и процедуры будут компилироваться с {$Q-}? и как проверить, состояние, например той же самой директивы компиляции {$Q+} она или {$Q-}? С помощью $IFOPT? Последний раз редактировалось Turbine; 02.07.2017 в 05:37. |
02.07.2017, 10:41 | #4 | ||
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
Цитата:
Цитата:
http://docs.embarcadero.com/products...ctive_xml.html http://www.delphibasics.ru/$IfOpt.php Последний раз редактировалось eoln; 02.07.2017 в 10:49. |
||
02.07.2017, 19:48 | #5 |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
Примерно так?
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
"Условная компиляция" в ворде | cw_o | Microsoft Office Word | 6 | 05.04.2013 14:00 |
Условная компиляция, GNU против MSVS | EUGY | Общие вопросы C/C++ | 5 | 17.12.2012 10:58 |
Условная компиляция | Camaro Chevelle | Помощь студентам | 0 | 09.11.2011 14:55 |
Условная компиляция | Arigato | Общие вопросы Delphi | 7 | 11.09.2010 07:10 |
Условная компиляция. | Пепел Феникса | Общие вопросы Delphi | 6 | 25.05.2010 21:36 |