您的位置:首页 > 编程语言 > C语言/C++

C++ vector拷贝使用总结

2017-06-03 11:11 267 查看
虽是细节,但使用不当,也容易造成严重错误。挖过填过的坑,记录一下。

主要有以下几种方法

vector<int> list;
list.push_back(1);
list.push_back(2);


一、初始化构造时拷贝

vector<int> tem(list);
这种拷贝,相当于复制了一份数据,list中的数据不变。

二、assign

vector<int> temlist;
temlist.assign(list.begin(), list.end());
一样的复制了一份数据,list中的数据不变。

三、swap

vector<int> temlist;
temlist.swap(list);
将list中数据全部移到temlist中,此时list中为空了
四、insert

vector<int> temlist;
vector<int> temlist2;
temlist2.push_back(2);
temlist2.push_back(2);
temlist.insert(temlist.end(), temlist2.begin(), temlist2.end());
将temlist2中的数据,全部插入到temlist的末尾。相当于复制了一份数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: