对于string,map这两种典型的STL记录下,使用迭代器访问有点像结构体、指向结构体的指针的访问,其他vector也是*it访问
string/vector/set
cout<<*it<<endl
map
cout<<(itt->first)<<" "<<(itt->second)<<endl;
不过后续有其他STL的迭代器访问可能会补充~
#include <stdio.h>
#include <string>
#include <map>
#include <iostream>
using namespace std;
int main(){
string str = "abcdefg";
for(int i = 0;i <str.length();i++){
cout<<str[i]<<endl;
}
printf("------------分割线-------------");
for(string::iterator it = str.begin();it != str.end();it++){
cout<<*it<<endl;//使用*it访问
}
map<char,int>mp;
mp['m'] = 20;
mp['r'] = 30;
mp['a'] = 40;
for(map<char,int>::iterator itt = mp.begin();itt != mp.end();itt++){
cout<<(itt->first)<<" "<<(itt->second)<<endl;//map这种通过迭代器的访问
}
}