我發現了一些代碼的項目,它看起來像這樣:在主要(...)中捕獲異常是否有意義?
int main(int argc, char *argv[])
{
// some stuff
try {
theApp.Run();
} catch (std::exception& exc) {
cerr << exc.what() << std::endl;
exit(EXIT_FAILURE);
}
return (EXIT_SUCCESS);
}
我不明白爲什麼例外被捕獲。如果不是,應用程序將退出並打印異常。
您是否看到有什麼理由在這裏發現異常?
編輯:我同意這是很好的打印異常錯誤。但是,重新拋出異常不是更好嗎?我有這樣的感覺,我們正在這裏吞嚥它...
如何吞嚥?代碼打印異常消息,然後退出。你還能做什麼?如果你重新拋出異常,誰會看到它?它會被抓到哪裏?畢竟,這是該計劃的切入點。 – jalf 2008-12-15 17:00:59