Недавно я поговорил с коллегой о том, как вставлять значения в STL maps. Я предпочел
map[key] = value;
потому что он чувствует себя естественно и ясно читает, тогда как он предпочитает
map.insert(std::make_pair(key, value))
Я просто спросил его, и никто из нас не помнит причину, почему вставка лучше, но я уверен, что это была не просто предпочтение стиля, а была техническая причина, такая как эффективность. ссылка SGI STL просто говорит: "Строго говоря, эта функция-член не нужна: она существует только для удобства".
Может ли кто-нибудь сказать мне эту причину, или мне просто снится, что есть один?