My code is full of calls to assert(condition)
.
In the debug version I use g++ -g
which triggers my assertions.
Unexpectedly, the same assertions are also triggered in my release version, the one compiled without -g
option.
How can I completely disable my assertions at compile time? Should I explicitly define NDEBUG
in any build I produce regardless of whether they are debug, release or anything else?
You must #define NDEBUG
(or use the flag -DNDEBUG
with g++) this will disable assert as long as it's defined before the inclusion of the assert header file.