我想處理默認值構造類成員中的異常。類似這樣的:C++ c-tor處理默認成員值構造異常?
int func()
{
throw 9.0;
return 9;
}
struct T
{
T() try {
}
catch(...)
{
cout << __func__ << endl;
}
int a{func()};
} ;
這可能嗎?最新的ISO C++標準對此有何評論?
編輯:我實際上證實了自己它在大多數編譯器上工作,但它是否定義良好,我應該通常使用這種構造?
我很確定,如果你發現異常,就會被重新拋出。 – chris 2015-04-06 12:01:53
爲什麼這樣?你可以解釋嗎? – AnArrayOfFunctions 2015-04-06 12:02:20
啊,*如果控件到達構造函數或析構函數的函數 - 嘗試塊 的處理函數的末尾,則重新拋出當前處理的異常* – chris 2015-04-06 12:03:41