Задачка

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Сообщение Mirage » 28.09.2005 10:23:57

Есть куча вызовов метода класса со строковым параметром (дебажный вывод).
В релизе (IFNDEF DEBUG) надо чтобы эти вызовы вообще не попадали в экзешник. Обрамлять каждый раз ифдефами - лень.
Надо чтобы ифдефов было немного и их количество не зависело от количества вызовов этого метода.
Что посоветуете, как решить?
Компиляторы - Delphi 6, FPC 2.0
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Сообщение STAKANOV » 28.09.2005 11:51:20

смартлинк
-CX -XX
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение Mirage » 28.09.2005 21:55:27

А как он работает? Что он выкидывает?
В Delphi 7 не только метод, но даже пустая процедура и, соответственно, ее вызовы сидят в екзешнике.:(
Как бы от этого избавиться?
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Сообщение STAKANOV » 28.09.2005 22:08:23

Именно так как ты хочешь - та процедура, что не вызывается в экзешник не попадает. Есть одна тонкость - процесс компиляции требовотелен к ресурсам (к памяти)
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение Mirage » 29.09.2005 07:05:43

STAKANOV: Я немного другое хочу. Процедура (а точнее даже метод) вызывается, т.к. я не хочу каждый вызов ифдефами обставлять. Но сама процедура в релизе будет пустой (тоже ифдефами сделано). Мне нужно не только чтобы процедуры не было (это даже не обязательно), а чтобы ее вызовов не было в коде. Их много, они содержат длинные строки и тянут на приличный размер. Какой смысл в вызове пустой процедуры?

Или нужен какой-нибудь другой метод ликвидации вызовов вывода в лог в релизе. Ну кроме обрамления ифдефами каждого вызова.

Неужели нет такого в Паскалях? :unsure:
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Сообщение STAKANOV » 29.09.2005 10:05:10

Такого нет :ph34r:
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение Mirage » 29.09.2005 13:36:13

Странно... С методом еще понятно, но если процедура пуста, то какой смысл ее в екзешнике держать? Вот тебе и смартлинк... :huh:
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Сообщение Guest » 29.09.2005 18:16:47

Очень помогает решить этот вопрос текстовый редактор, а именно, его возможность выполнять контекстную замену. :) Поставь перед вызовом // и спи спокойно. Когда надо снять, опять контекстную замену... В чем проблема? Обязательно надо на голову встать?
Guest
 

Сообщение Mirage » 29.09.2005 20:55:52

Дело в том, что программа, как правило, состоит не из одного модуля. И даже не из одного десятка. И количество их растет. Метод с заменой еще неудобнее, чем с ифдефами.;)
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Сообщение STAKANOV » 29.09.2005 22:01:07

выбора нет, только IFDEF
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение Mirage » 30.09.2005 07:07:08

Ну еще можно попробовать намекнуть разработчикам FPC что пустая процедура в экзешнике имеет мало смысла.;)
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Сообщение Guest » 30.09.2005 10:41:17

Mirage писал(а): Дело в том, что программа, как правило, состоит не из одного модуля. И даже не из одного десятка. И количество их растет. Метод с заменой еще неудобнее, чем с ифдефами.;)

Очень много редакторов, которые делают контекстную замену во всем проекте. Например, я пользуюсь JEdit. В винде, помню. был Aditor. Да их просто тьма. Помоему, проблема надумана. Было бы желание. <_<
Guest
 

Сообщение Mirage » 30.09.2005 11:27:10

Именно. Желания использовать какие-то редакторы (и разбираться с ними), для решения вобщем-то простой задачи нет ни малейшего.
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

Рейтинг@Mail.ru