基于范围的for循环是C++11新特性,可以用它来很方便的遍历整个数组/容器
auto自动类型推断:用于从初始化表达式中推断出变量的数据类型,通过auto的自动类型推断,可以大大简化编程工作
具体看例子:
#include<stdio.h>
#include<vector>
using namespace std;
vector<int> G[15];
int a[15] = {1,2,3,2,1,4,5,6,5,4};
int main(void)
{
for(int &x: a) //遍历数组a[]中的所有元素
{
x *= 5; //这个x是引用,所以修改x的值就相当于修改了数组/容器里的值
G[0].push_back(x);
printf("%d ", x);
}
puts("");
for(int x: a)
{
x *= 5; //这个x不是引用,所以修改x的值不会影响任原数组/容器里的值
printf("%d ", x);
}
puts("");
for(auto &x: G[0])
printf("%d ", x);
puts("");
return 0;
}