реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> DEBUG vs NDEBUG, кто как и как правильно...
demiurg_spb
сообщение Jul 2 2010, 13:19
Сообщение #1


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Для отладки использую компиляцию в особой конфигурации.
Для этого из Makefile спускаю дефайн для препроцессора.
Видел что его имя может быть DEBUG или NDEBUG ну и различные вариации на эту тему.
Так вот вопрос: что предпочтительней и почему?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 2 2010, 13:56
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Удалять проще, чем добавлять. Поэтому отключение отладочных модулей предпочтительнее. ИМХО.
Кстати, в IAR именно добавляется NDEBUG в профиле Release.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Jul 5 2010, 16:42
Сообщение #3


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



На самом деле что удалять, что добавлять по скорости и простоте ИМХО едино.
А мне всё-таки DEBUG больше нравится - короче:-)

Так значит никакого "промышленного" стандарта нет на сей счёт?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Artem_Petrik
сообщение Jul 5 2010, 17:06
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 443
Регистрация: 22-07-06
Из: Украина, г. Харьков
Пользователь №: 19 006



Надо делать опрос smile.gif . Мне DEBUG больше нравится. Да и встречался вроде чаще.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jul 5 2010, 18:21
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Как раз стандартом можно считать NDEBUG.
Наличие этого макроса влияет на результат подстановки функции assert из <assert.h> - это прописано в стандарте.

Сообщение отредактировал Genadi Zawidowski - Jul 5 2010, 18:21
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Jul 6 2010, 12:58
Сообщение #6


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Ага! Вот оно:-)


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th April 2024 - 02:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016