Меня интересует, какое назначение различные платформы / компиляторы («реализации») / фреймворки назначают макросу препроцессора C и C ++ NDEBUG
.
В C , а также в стандарте C ++ это определение упоминается только один раз, а именно для управления поведением макроса assert ()
.
] Я бы попросил включить только конкретные ответы, где вы знаете , что определенная платформа / фреймворк / библиотека для C или C ++ использует определение NDEBUG
для включения или отключения чего-либо еще в дополнение к стандартный определенный макрос assert ()
.
Одной из причин, по которой задается этот вопрос, было то, что MS (Visual-C ++) всегда (?) использует «свой» _DEBUG
define чтобы различать отладку и выпуск, и мне было интересно, является ли это обычной практикой для библиотеки / платформы, чтобы иметь свое «собственное» определение отладки, или другие библиотеки / платформы используют NDEBUG
для своих вещей, связанных с отладкой.