Скажем, у меня есть std::map<int, int>, было бы безопасно это сделать?
std::map<int, int> m_map;
m_map[0] += 1;
Если ключ 0 не существовал на карте, когда я это делаю, как бы он знал, какое значение добавить 1 в?
Я надеюсь, что std:: map справится с этим, выполнив = вместо += в том случае, когда значение создает новую запись на карте. Это избавило бы меня от необходимости:
std::map<int, int>::iterator it = m_map.find(0);
if(it != m_map.end()) {
it->second += 1;
}
else {
m_map[0] = 1;
}