基本用法
正常我们想要输出一个数组的全部元素时,需要采用以下的方法:
int array[10] = { 54, 23, 78, 9, 15, 18, 63, 33, 87, 66 };
for (int i = 0; i < 10; i++) {
cout << array[i] << " ";
}
在C++11中,我们可以在for循环添加冒号 : 来简化这一过程:
int array[10] = { 54, 23, 78, 9, 15, 18, 63, 33, 87, 66 };
for (auto a : array) {
cout << a << " ";
}
需要注意
如果传入的迭代参数类型为非引用时,做的是值拷贝,因此修改数据是无效的。
#include<iostream>
using namespace std;
int main() {
int array[10] = { 54, 23, 78, 9, 15, 18, 63, 33, 87, 66 };
for (auto a : array) {
cout << a << " ";
}
cout << endl;
for (auto a : array) {
a++;
}
for (auto a : array) {
cout << a << " ";
}
return 0;
}
如果传递的是引用,则可以改变原数组的值。
#include<iostream>
using namespace std;
int main() {
int array[10] = { 54, 23, 78, 9, 15, 18, 63, 33, 87, 66 };
for (auto a : array) {
cout << a << " ";
}
cout << endl;
for (auto &a : array) {
a++;
}
for (auto a : array) {
cout << a << " ";
}
return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)