C++ iterator-」first和iterator-」second解析

我们都知道c++中map容器里包含键值和数值,在学习大佬代码时发现it.first和it.second用法,感觉特别难以理解
其实c++ 里面的map容器的迭代器里面 有个first 和 second,分别指向键值和数值
it.first就是在迭代器中获取map键值,it.second同理
举个例子:

map<string, string> m;
m["one"] = "sdfasf";
//迭代器类型需和容器保持一致
map<string, string>::iterator p = m.begin();
string a=p->first; // a值是 "one" 也可以写作p.first
string b=p->second; //b值是 "sdfasf",也可以写作p.second

你可能感兴趣的:(C++)