我有一個非常基本的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 ::關鍵字。我相應地更新了我的問題。 –