#include <list>
#include <iostream>
using namespace std;
//list 鏈表的打印
void print(list<int>& l)
{
list<int>::iterator i,iend;
iend = l.end();
for (i=l.begin();i!=iend;i++)
{
cout<<*i<<' ';
}
}
int main()
{
list<int> l;
for (int j = 1;j <=10;j++ )
{
l.push_back(j);
}
//splice()函數
/*
//void splice(iterator position , list& x)
將x的鏈表歸並到當前list鏈表的position位置之前, list對象x將被清空
void splice(iterator position , list& , iterator i)
將一個list的迭代器i值所指的元素,歸並到當前list鏈表中, 並將被歸並元素從原鏈表中刪除
//
*/
list<int> carry;
carry.splice(carry.begin(),l,l.begin());
cout<<"carry的鏈表元素為:";
print(carry);
cout<<endl;
cout<<"l 的鏈表元素為:";
print(l);
cout<<endl;
//merge()函數用法
/*
void merge()合並兩個鏈表並使之默認升序(也可改):
*/
list<int> x;
x.push_back(32);
x.push_back(33);
x.push_back(34);
l.merge(x);
cout<<"l 的鏈表元素為:";
print(l);
cout<<endl;
getchar();
return 0;
}