我在閱讀「Ivor Horton的開始編程Visual C++ 2010」,我在第10章 - 標準模板庫。我的問題是地圖容器map<Person, string> mapname
。這本書向我展示了很多添加元素的方法,例如pair<K, T>
和稍後使用make_pair()
函數和mapname.insert(pair)
。但是他突然介紹了一種元素添加技術,用於以下代碼:C++ map <K,T>初始化
int main()
{
std::map<string, int> words
cout << "Enter some text and press Enter followed by Ctrl+Z then Enter to end:"
<< endl << endl;
std::istream_iterator<string> begin(cin);
std::istream_iterator<string> end;
while(being != end) // iterate over words in the stream
//PROBLEM WITH THIS LINE:
words[*begin++]++; // Increment and store a word count
//there are still more but irrelevant to this question)
}
指示的線是我的問題。我明白words
是地圖,但我從來沒有見過這樣的初始化。隨着它的增量,那件事情會發生什麼。我相信艾弗爾頓沒有進一步詳細闡述這一點,或者至少他應該給予足夠的介紹,不要對像我這樣的新手感到驚訝。
您有失蹤';''後words' –