C++11的for循环的新用法(推荐)
吴振华 · 245浏览 · 发布于2021-11-11
C++11这次的更新带来了令很多C++程序员期待已久的for range循环,每次看到javascript, lua里的for range,心想要是C++能有多好,心里别提多酸了。这次C++11不负众望,再也不用羡慕别家人的for range了。下面看下C++11的for循环的新用法
字符串
string str = "this is a string"; for(auto ch : str) cout << ch << endl;
等价于
for(int i = 0; i < str.size(); i++) cout << str[i] << endl; vector vector<int> v = {1, 2, 3, 4, 5}; for(auto i : v) cout << i << endl;
等价于
for(int i = 0; i < v.size(); i++) cout << v[i] << endl;
二维vector
vector<vector<int>> v = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; for(auto i : v) for(auto j : i) cout << j << endl;
等价于
for(int i = 0; i < v.size(); i++) for(int j = 0; j < v[i].size(); j++) cout << v[i][j] << endl;
数组
int ary[] = {1, 2, 3, 4, 5}; for(auto i : ary) cout << i << endl;
等价于
for(int i = 0; i < 5; i++) cout << ary[i] << endl; map map<char, int> m = {{'a', 1}, {'b', 2}, {'c', 3}}; for(auto t : m) cout << t.first << ' ' << t.second << endl;
等价于
for(map<char, int> :: iterator itr = m.begin(); itr != m.end(); itr++) cout << itr ->first << ' ' << itr ->second << endl;
相关推荐
PHP实现部分字符隐藏
沙雕mars · 1324浏览 · 2019-04-28 09:47:56
Java中ArrayList和LinkedList区别
kenrry1992 · 908浏览 · 2019-05-08 21:14:54
5月语言排行榜:R 跌出前二十,Python 紧咬 C++
manongba · 686浏览 · 2019-05-09 17:27:24
Tomcat 下载及安装配置
manongba · 968浏览 · 2019-05-13 21:03:56
什么是SpringBoot
iamitnan · 1086浏览 · 2019-05-14 22:20:36
分类专栏
最新发布
最热排行
0评论