В map гарантировано ли, что int инициализируется нулем?

Например, посчитав появление слов в книге, я видел, как кто-то просто написал:

map<string, int> count;
string s;
while (cin >> s) count[s]++;

Это правильный способ сделать это? Я тестировал на своей машине и кажется так. Но гарантируется ли инициализация до нуля? Если это не так, я могу представить себе такой код:

map<string, int> count;
string s;
while (cin >> s)
    if (count.find(s) != count.end())  count[s]++;
    else count[s] = 1;
7
задан Mat 2 October 2011 в 17:01
поделиться