Maneira mais eficiente de atribuir valores a mapas
Qual a maneira de atribuir valores a um mapa é mais eficiente? Ou são todos otimizados para o mesmo código (na maioria dos compiladores modernos)?
// 1) Assignment using array index notation
Foo["Bar"] = 12345;
// 2) Assignment using member function insert() and STL pair
Foo.insert(std::pair<string,int>("Bar", 12345));
// 3) Assignment using member function insert() and "value_type()"
Foo.insert(map<string,int>::value_type("Bar", 12345));
// 4) Assignment using member function insert() and "make_pair()"
Foo.insert(std::make_pair("Bar", 12345));
(Eu sei que eu poderia comparar e verificar a saída do compilador, mas essa questão surgiu agora e a única coisa que tenho à mão é o meu celular ... hehe)