のプログラムより、(一部改編)
=============================
#include "stdafx.h"
#include <iostream> using namespace std; using namespace System;
int main() {
try {
throw "Exception : Kitty on your lap\n";
cout << "Di Gi Gharat";
}
catch (int e) { cout << e; }
cout << "Kitty on your lap";
return 0;
}
=============================try {
throw "Exception : Kitty on your lap\n";
cout << "Di Gi Gharat";
}
catch (int e) { cout << e; }
cout << "Kitty on your lap";
return 0;
}
のように、例外処理を受け取るcatchが存在しないと、
'System.Runtime.InteropServices.SEHException'のハンドルされていない例外がTEST.exeで発生しました。
追加情報:外部コンポーネントが例外をスローしました。
となる。
つまりちゃんと
=============================
#include "stdafx.h"
#include <iostream> using namespace std; using namespace System;
int main() {
try {
throw "Exception : Kitty on your lap\n";
cout << "Di Gi Gharat";
}
catch (int e) { cout << e; }
catch(char* ea){
cout<<ea;
}
cout << "Kitty on your lap";
return 0;
}
=============================try {
throw "Exception : Kitty on your lap\n";
cout << "Di Gi Gharat";
}
catch (int e) { cout << e; }
catch(char* ea){
cout<<ea;
}
cout << "Kitty on your lap";
return 0;
}
とちゃんと例外処理を書いておけばいい。