им следующую реализацию програ

Автор admin Четверг, 11 июня 2009 11:32

им следующую реализацию программы с подсчетом слов: //: C07:WordCount.cpp // Подсчет вхождений слов в файле // с использованием отображения. linclude linclude linclude
linclude linclude “../require.h” using namespace std: int main(int argc. char* argv[]) { typedef map WordMap: typedef WordMap:iterator WMIter; const char* fname – “WordCount.cpp”; if(argc > 1) fname = argv[l]: ifstream in(fname): assure(in. fname): WordMap wordmap; string word: while(in » word) wordmap[word]++; for(WMIter w = wordmap.beginO; w != wordmap.endO; w++) cout « w->first « “: ” « w->second « endl: } ///:- Заодно этот пример демонстрирует мощь нулевой инициализации. Обратим внимание на следующую строку программы: wordmap[word]++: Выражение увеличивает значение int, ассоциированное с word. При отсутствии ключа word в отображении автоматически создается новая пара, в которой значение инициализируется нулем, возвращаемым при вызове псевдоконструктора int(). Вывод всего списка требует перебора с применением итератора (чтобы использовать для контейнера тар сокращенную запись с алгоритмо


Комментарии закрыты.