Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.02.17;
Скачать: [xml.tar.bz2];

Вниз

Условная компиляция   Найти похожие ветки 

 
anbezr   (2003-02-10 10:13) [0]

Привет!
в код компопнента вклячены несколько отладочных строк; в окончательной программе их быть не должно. хотелось бы использовать директивы условной компиляции.
{$DEFINE DEBUGMODE}

{$IFDEF DEBUGMODE}
SavetoFile("");
{$ENDIF}
но в справке написано, что DEFINE работает только в пределах одного файла. что я должен использовать, чтобы иметь возможность пользоваться условной компиляцией.


 
Anatoly Podgoretsky   (2003-02-10 10:15) [1]

Ты должен использовать {$IFDEF


 
anbezr   (2003-02-10 10:24) [2]

так я и использую. всё прекрасно работает, но только в том случае, если {$DEFINE ...} я вставлю в каждом файле, в котором есть {$IFDEF ...}. это не удобно и можно ч-л забыть убрать при установке ококнчательного варианта программы. нельзя ли задавать {$DEFINE ...} не более чем в одном месте кода.


 
uw   (2003-02-10 10:24) [3]

В отдельном модуле определить DEBUGMODE и включить этот модуль во все остальные в разделе uses.


 
anbezr   (2003-02-10 10:28) [4]

так нет - не работает. сам сначала думал что так сработает. кроме того, {$DEFINE C1} можно заменить на const C1 = true. но так тоже не работает? или я чего-то недопонимаю...


 
Anatoly Podgoretsky   (2003-02-10 10:31) [5]

Так ты бы и задавал вопрост так.
Для этого есть возможность задания констант условной компиляции в среде.


 
anbezr   (2003-02-10 10:46) [6]

я это упустил из виду. если речь идет о Projects/Options/Directories/conditionals, то все равно не работает.



 
han_malign   (2003-02-10 10:48) [7]

{$IFOPT D+} {$ENDIF} - блок включается при включенной отладке
dcc32 -DDEBUGMODE progect1.dpr - определяет символ для всех файлов проекта

Project Options->Directories/Conditionals->Conditionals->Conditional defines: DEBUGMODE;...
- определяет символы для всех файлов проекта


 
Reindeer Moss Eater   (2003-02-10 10:57) [8]

Во всех модулях проекта, нуждающихся в условной компиляции:
{$I MyDefines.Inc}

В MyDefines.Inc:

{$DEFINE DEBUGMODE}


 
anbezr   (2003-02-10 11:19) [9]

при добавлении в Projects/Options/Directories/conditionals дельфя не перекомпилировала проект - по этому и не работало


 
Calm   (2003-02-10 11:20) [10]

anbezr, а чем тебя не устроили ответы на этот же твой вопрос здесь?
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1044693242&n=0



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.02.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
3-52775
Gaber
2003-01-30 19:22
2003.02.17
IB компоненты


14-53197
Jaxtor
2003-01-31 10:43
2003.02.17
Firebird


3-52736
Andriano
2003-01-30 13:30
2003.02.17
ParamByName в FIBDataSet


14-53214
Sancho
2003-01-31 17:37
2003.02.17
Несколко операционок


1-53037
Stan
2003-02-10 23:30
2003.02.17
Работа с файлами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский