参考:https://blog.csdn.net/hust_bochu_xuchao/article/details/72850862
虽是细节,但使用不当,也容易造成严重错误。挖过填过的坑,记录一下。
主要有以下几种方法
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的末尾。相当于复制了一份数据
copy的用法: