我正在阅读“Ivor Horton 的 Visual C++ 2010 编程入门”,我在第 10 章——标准模板库。我的问题是地图容器map<Person, string> mapname
。这本书向我展示了许多向其中添加元素的方法,例如使用 和稍后pair<K, T>
使用该函数,以及. 但突然间,他引入了一种元素添加技术,用于以下代码:make_pair()
mapname.insert(pair)
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
是地图,但我从未见过这样的初始化。以及随着它的增加而发生的事情。我相信 Ivor Horton 未能进一步阐述这一点,或者至少他应该给出足够大的介绍,不会让像我这样的菜鸟感到惊讶。