我有一个非常基本的C++程序: -XCODE产生分段故障,而不是例外
#include <iostream>
#include <stdexcept>
int main(int argc, const char * argv[])
{
std::cout <<"Welcome .. "<<std::endl;
try {
throw std::runtime_error(std::string("Crazy exception"));
}
catch(std::exception& e) {
std::cerr << "error: " << e.what() << "\n";
exit(0);
} return 0;
}
Whenver我跑,而不是例外,我看到一个Segmentation fault: 11
在调试这个程序,我看到EXC_BAD_ACCESS(code=EXC_I386_GPFLT)
在扔声明。 我在XCODE上启用了异常。有没有人见过这种基本错误?
这真是笑死我了,我应该重新安装XCODE?如果是,什么是清洁安装方式或从APP STORE的东西
重新安装XCODE直接。同样的问题!接下来是什么?重新安装我相信的整个OSX。有人可以提供一些线索,在休息之前我可以尝试什么“可以”尝试对机器进行无脑的重新格式化?
的[如何捕捉genereal异常,并显示其得到的是什么()](可能的复制https://stackoverflow.com/questions/14631011/how-to- catch-a-genereal-exception-and-show-its-derived-what) - 它应该是catch(std :: exception const&e)'? –
谢谢,但如果我忘了std ::关键字,它会创建一个编译错误。我的代码中有std ::关键字。我相应地更新了我的问题。 –