ゼロ除算例外がキャッチされているかどうかを確認するために、次のコードを試していました。
int main(int argc, char* argv[])
{
try
{
//Divide by zero
int k = 0;
int j = 8/k;
}
catch (...)
{
std::cout<<"Caught exception\n";
}
return 0;
}
これを VC6 でコンパイルすると、catch ハンドラが実行され、出力は "Caught exception" でした。しかし、これを VS2008 でコンパイルすると、catch ブロックを実行せずにプログラムがクラッシュしました。違いの理由は何ですか?