原文地址:https://blog.csdn.net/hanshihao1336295654/article/details/82751155
基于范围的for循环
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
vector<int> my_array = { 1, 2, 3, 4, 5 };
方式一:原始方法
for (int x = 0; x < my_array.size(); x++)
{
my_array[x] *= 2;
cout << my_array[x] << endl;
}
方式二:用迭代器
for (auto it = my_array.begin(); it != my_array.end(); ++it)
{
*it *= 2;
cout << *it << endl;
}
方式三:C++11特性,加&可以修改vector中的元素
vector<int> my_array = { 1, 2, 3, 4, 5 };
// 每个数组元素乘于 2
for (int &x : my_array)
{
x*= 2;
cout<<x<<endl;
}
方式四:无&只能输出vector中的元素,不能修改
vector<int> my_array = { 1, 2, 3, 4, 5 };
// 每个数组元素乘于 2
for (int x : my_array)
{
cout<<x<<endl;
}
方式五:auto自动推断类型
for (auto &x : my_array) {
x *= 2;
cout<<x<<endl;
}