标签: c++
在我今天愉快的调试会议中,我意识到分段错误的原因或多或少如下:
assert(functionWithSideEffect()); doSomethingWhichSegfaultsUnlessSideEffectHappens();
我非常清楚你不应该做这样的事情,我显然修复了代码,但我仍然感到困惑,为什么在使用调试可执行文件测试时发生了分段错误,即没有定义NDEBUG。
在这种情况下,不应该执行断言参数中的函数吗?