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;
到此这篇关于C++11的for循环的新用法的文章就介绍到这了,更多相关C++11 for循环内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:C++11的for循环的新用法(推荐)


猜你喜欢
- ubuntu下C/C++获取剩余内存 2023-09-18
- C++ 数据结构超详细讲解顺序表 2023-03-25
- C语言qsort()函数的使用方法详解 2023-04-26
- C语言手把手带你掌握带头双向循环链表 2023-04-03
- 我应该为我的项目使用相对包含路径,还是将包含目录放在包含路径上? 2022-10-30
- c++ const 成员函数,返回一个 const 指针.但是返回的指针是什么类型的 const? 2022-10-11
- 详解C语言中sizeof如何在自定义函数中正常工作 2023-04-09
- Qt计时器使用方法详解 2023-05-30
- C语言详解float类型在内存中的存储方式 2023-03-27
- Easyx实现扫雷游戏 2023-02-06