При использовании std::map
или std::unordered_map
, каков предпочтительный способ доступа к элементу, который не может находиться в контейнере? Следует ли просить разрешения или просить прощения? Почему?
То есть
if (mymap.find(key) != mymap.end()) {
value = mymap.at(key);
// do stuff
}
else {
// do something else
}
против.
try {
value = mymap.at(key);
// do stuff
}
catch(const std::out_of_range& oor) {
// do something else
}