map<string,vector<string>> M;
auto it = M.begin();
第一行声明一个图M,string是这个图的key,vector<string>是其value;
第二行把M的第一个元素赋给it。
it 表示的是图M的第一整个元素;
it->first 表示的是这个元素的key的值;
it->second 表示的是这个元素的value的值。
(it+1)可以用来表示下一个元素,这可以用在循环中,遍历图:
for(auto it = M.begin();it!=M.end();it++){ }
ps:这种用法在map和unordered_map中都要用到(需要注意的是,map中储存是按照压入顺序放置的,而unordered_map中储存是乱序的详见:C++ map和unordered_map中储存顺序实验_Liger21的博客-CSDN博客)。