标签: c++ makefile options
我的main函数创建了一个ClassA对象,后者又创建了一个定期调用ClassA对象函数的线程。我的问题是,当我在没有优化的情况下调用make时,生成代码运行正常,但是通过-O2优化,我得到了段错误+++ killed by SIGSEGV +++。你知道我应该检查什么让它运行-O2选项吗?
+++ killed by SIGSEGV +++
答案 0 :(得分:0)
查找您使用未定义行为的任何地方。优化只能保证定义的行为与未优化的代码匹配,未定义的行为很可能会发生变化。
如其他地方所述,线程和未初始化的变量是一个很好的起点。