两者都可以获取到迭代容器中的值,但是使用auto iter时不会对容器对象造成改变,
而使用auto &iter,对于iter的任何修改将直接修改容器内对应的值。
#include#include using namespace std; void printVec(vector & vec) { for (int i = 0; i < vec.size(); i++) cout << vec[i] << endl; } int main() { vector vec = {4,3,2,1,0 }; cout<<"***************第一种*************"< iter = iter + 100; } printVec(vec); cout<<"***************第二种*************"< iter = iter + 100; } printVec(vec); }
输出结果如下:
***************第一种************* 4 3 2 1 0 ***************第二种************* 104 103 102 101 100



