首页 > 编程语言 >c++ auto it 遍历改值的坑

c++ auto it 遍历改值的坑

时间:2022-11-26 15:23:27浏览次数:34  
标签:arr 遍历 ++ auto back c++ 改值 push

for(auto it:arr)

利用这样遍历修改容器的值,是不可以成功修改的。

#include <iostream>
#include <vector>
using namespace std;
vector<int> arr;
void show1()
{
    for (auto it : arr)
    {
        it++;
    }
}
void show2()
{
    for (int i = 0; i < arr.size(); i++)
    {
        arr[i]++;
    }
}
int main()
{
    arr.push_back(1);
    arr.push_back(2);
    arr.push_back(3);
    arr.push_back(4);
    show1();
    show2();
    for (auto it : arr)
        cout << it << endl;
    return 0;
}

image

标签:arr,遍历,++,auto,back,c++,改值,push
From: https://www.cnblogs.com/xjy881/p/16927471.html

相关文章

  • c++友元类2
    #include<iostream>#include<cmath>usingnamespacestd;classPoint{private: doublex,y; friendclassLine;public: Point(doublei=0,doublej=0) { x=i; y=j; } P......
  • c++友元类
    #include<iostream>usingnamespacestd;classmyComplex//复数类{private: doublereal,imag;public: myComplex(); myComplex(doubler,doublei); friendclassoper;......
  • C/C++小型文本搜索引擎
    C/C++小型文本搜索引擎小型文本搜索引擎的设计与实现实验要求:(1)构造二叉查找树①从文件中读入内容,过滤掉阿拉伯数字和标点符号,并将英文字母的大写形式全部转换成小写......
  • C++ --- mingw编译提示too many sections…File too big
    现象:在WindowsQt下使用MingW编译,报错toomanysections…Filetoobig当代码中使用了大量模板时,会导致编译出的OBJ文件巨大,编译器会报错,在MSVC下错误为FatalErro......
  • C++(二)(未完成)
    选择与循环选择语句if语句if(){ GRAM}else{ GRAM}switch语句switch(){ case常量表达式1: 语句序列1; break; case常量表达式2: 语句序列2;......
  • AutoLisp的 car、cadr、caddr、cdr用法
    特别注意的是点表的表现形式有所不同。这点困惑了我一段时间,我最开始以为点表的点也是一个数据,后来发现不是。cdr 返回去掉了第一个元素的表(cdr......
  • C/C++航空客运订票系统
    C/C++航空客运订票系统航空客运订票系统的设计与实现:本系统可以实现航空客运订票的主要业务活动。例如,浏览和查询航班信息、机票预订和办理退票等。(全部完成起评分“良好......
  • AutoLisp开发读书笔记(2):Lisp的条件控制分支函数Repeat、While用法
    Lisp的条件控制分支函数Repeat、While用法......
  • AutoLisp开发读书笔记(1):Lisp的条件控制分支函数Cond、if、Progn用法
    AutoLisp的if、Cond、Progn的配合使用方法:是图片:......
  • C++的字符串流
    sstream使用,注意clear和str("")#include<iostream>#include<sstream>#include<string>usingnamespacestd;intmain(){stringstreamss;ss.put......