不是说断言assert对于release版本无效吗,我这个怎么还是会起作用?一个简单的测试代码,用VS2010建的,releas
不是说断言assert对于release版本无效吗,我这个怎么还是会起作用?
一个简单的测试代码,用VS2010建的,release下怎么还是会触发断言报错呢?不是只有DEBUG才有效吗?
#include <iostream>
#include <assert.h>
using namespace std;
int main(){
int b = 0;
assert(b);
cout<<b<<endl;
system("pause");
return 0;
}
[解决办法]
需要 #define NDEBUG 要么放在 include assert.h 之前,要么写在编译命令行里。
