整数のマップを確立するためのベクトルのベクトルがあり、次のようにして、ベクトルがスローされるたびに範囲外のエラーをキャッチしたいと考えています。
vector< vector<int> > agrid(sizeX, vector<int>(sizeY));
try {
agrid[-1][-1] = 5; //throws an out-of-range
}
catch (const std::out_of_range& e) {
cout << "Out of Range error.";
}
ただし、私のコードはエラーをまったくキャッチしていないようです。まだ std::terminate を実行したいようです。誰もこれがどうなっているのか知っていますか?