- 作用
在开发阶段用来调试程序,当程序出现不可能的情况时报告信息及其出处。
- 用法
1、包含头文件:<cassert>;
2、禁止使用:
1>、在编译时,加入选项NDEBUG,即:-DNDEBUG;
2>、或在包含头文件前定义NDEBUG宏.
也就是说,如果未定义NDEBUG宏或者编译选项,那么assert会一直生效!
- 注意事项
1、应该只断言一个条件!因为如果多个条件,那么出现非法情况时将不知道是哪个条件不满足;
2、assert会影响程序性能,如果想要测试性能,则先关闭assert;
3、release版本必须关闭assert,即:必须定义NDEBUG宏!