我试过这段代码
#include <iostream>
#include <utility>
#include <vector>
#include <unordered_map>
#include <stdexcept>
using namespace std;
int main() {
unordered_map<int,int> parent_map;
try {
int a = parent_map[0];
cout<<a<<endl;
} catch (out_of_range oe) {
cout<<"out of range"<<endl;
}
return 0;
}
我认为应该捕获超出范围的异常。但是,输出是
0
我很困惑。我记得我以前有这个工作。