8
なぜstd :: bad_exceptionをキャッチした後にクラッシュするのですか? (私はVC7を使用しています)例外をキャッチした後にクラッシュする
#include "stdafx.h"
#include <exception>
int validateInt (int x) throw (int,std::bad_exception) {
if (0 == x) {
throw std::bad_exception("x");
}
return x;
}
class C {
int i;
public:
C(int);
};
C::C(int ii)
try : i(validateInt(ii)) {
std::cout << "I'm in constructor function body\n";
} catch (std::exception& e) {
std::cout << "I caught an exception...\n";
}
int _tmain(int argc, _TCHAR* argv[]) {
C a(0);
return 0;
}
これはどのようにしてコンパイルされましたか? –
どういう意味ですか?構造体の初期化リストを囲むtry-catchブロックは、合法的なC++です。 – anonymvs
うわー。私はそれが使われているのを見たことがないし、それについて聞いたこともありません。 –