C++中如何把list容器的元素复制到另一个list容器中

来源:百度知道 编辑:UC知道 时间:2024/06/23 22:29:33
假如有两个容器list<string> a和list<string> b;
我想把a的第二个至最后的元素复制到b中(即不要a的首元素),应如何做??

在list里面建立一个method用来copy
void List::CopyFrom(const List otherList)
{
for(int a=1;a++;a<length) //这个长度是a的。。
{
.....//其中过程取决于你用的是普通array list
//还是linked list
//反正一项一项对应的copy就可以了
}
}
使用的时候 b.CopyFrom(a); 就可以了!

或者如果你有method能在main()里面读取到a的内容,也可以就在main()里面用loop边读取a的每一个项,边用Insert这个method放到b里面去!

希望能解答你的问题!

把迭代器从第二个开始拷贝就可以了,也可以用通用算法,我这里就直接拷贝了。
#include <iostream>
#include <list>
using namespace std;

int main()
{
list<int> a;
list<int> b;
int i;
for (i=0; i < 30; ++i, a.push_back(i));
std::list<int>::iterator rit = a.begin();
std::list<int>::iterator rend = a.end();
for(++rit;rit != rend;++rit)
b.push_back(*rit);

rit=b.begin();
rend=b.end();
for(;rit != rend;++rit)
cout << *rit << ", ";
return 0;
}

使用很