c++之修改vector中的元素
#include <iostream>  
#include <windows.h>  
#include <math.h>  
#include <cstdio>  
#include <cstring>  
#include <vector>  
  
using namespace std;  
  
void vector_out(vector<int> &vector_in)  
{  
    for (unsigned int i = 0;i<vector_in.size();i++)  
    {  
        if (i == vector_in.size()-1)  
        {  
            cout<<vector_in[i]<<endl;  
        }  
        else  
            cout<<vector_in[i]<<',';  
    }  
      
}  
  
int main()  
{  
    string s("a2cdefghijklmn");  
    vector<int> abc(10);   
    if(abc.begin()!=abc.end())  
    {  
        for (unsigned int i = 0;i<abc.size();i++)  
        {  
            abc[i] = i+1;  
        }  
        cout<<"原始数据:"<<endl;  
        vector_out(abc);  
        auto &val2 = abc.back(); //val2为指向最后一个元素的引用  
        val2 = 2;  
        cout<<"变量为引用类型,修改后:"<<endl;  
        vector_out(abc);  
  
        auto val3 = abc.back();//仅是abc.back()的一个拷贝  
        val3 = 10;  
        cout<<"变量不是一个引用,修改无效:"<<endl;  
        vector_out(abc);  
    }  
    cin.get();  
    return 0;  
}

运行结果:


Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐