当修改 aassert()
或 a中的变量时,我能做些什么来获得编译器警告debug_print()
?
我想防止这样的错误发生
int i=0;
assert((++i)); // i is modified only in debug mode
std::set<int> s;
debug_print(("item inserted: %d\n", s.insert(5).first )); // set is modified only in debug mode
假设我有一组仅在调试模式下构建的包装函数,我可以在其中进行必要的检查
MyDbgAssert() // #define that wraps assert()
MyDbgPrint() // #define that wraps printf()