Tengo un std::map
así:¿Los mapas STL inicializan los tipos primitivos en la inserción?
map<wstring,int> Scores;
Almacena nombres de los jugadores y las puntuaciones. Cuando alguien recibe una puntuación yo simplemente hago:
Scores[wstrPlayerName]++;
cuando no hay ningún elemento en el mapa con la tecla wstrPlayerName
se creará uno, pero lo hace inicializar a cero o nula antes del incremento o se trata deja sin definir ?
¿Debo verificar si el elemento existe cada vez antes del incremento?
Para enteros, * construcción * predeterminada no es realmente una cosa. La inicialización * predeterminada * los deja sin inicializar a menos que sean estáticos. Maps * value *: inicializa los elementos, por lo que en el caso de los enteros obtiene la inicialización cero. – juanchopanza