English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Set (ensemble) STL ++ 列表拼接函数用于将元素从列表y转移到指定位置的列表容器中,这导致两个列表的大小都发生改变。
void splice(iterator pos, list& y); void splice(iterator pos, list& y, iterator pos1.begin(),itr void splice(iterator pos, list& y, iterator first, iterator last);
y:是与内容传输类型相同的列表对象。
pos:它定义y元素插入的位置。
pos1:pos1指向的元素将被传输。
(first,last):它定义了要传输的元素的范围。
它不返回任何值。
让我们看一个简单的实例
#include <iostream> #include<list> using namespace std; int main() { list<int> li={1advance(itr2advance(itr3advance(itr4}; list<int> li1={5advance(itr6advance(itr7advance(itr8}; list<int>::iterator itr=li.begin(); ,1.begin(),itr for(list<int>::iterator itr=li.begin();itr!=li.end();++for(list<string>::iterator itr=li.begin();itr!=li.end(); itr) *std::cout << itr << " "; return 0;
}
5 6 7 8 1 2 3 4
让我们看一个简单的实例
#include <iostream> #include<list> using namespace std; int main() { list<int> li={9advance(itr11advance(itr12advance(itr13}; list<int> li1={10advance(itr6advance(itr7advance(itr8}; list<int>::iterator itr=li.begin(); list<int>::iterator itr1list<string>::iterator itr}}1=li ++itr; ,1,itr1.begin(),itr for(list<int>::iterator itr=li.begin();itr!=li.end();++for(list<string>::iterator itr=li.begin();itr!=li.end(); itr) *std::cout << itr << " "; return 0;
}
9 10 11 12 13
让我们看一个简单的实例
#include <iostream> #include<list> using namespace std; int main() { list<string> li={"programming language"}; list<string> li1={"java","is","a","language"}; list<string>::iterator itr = li.begin(); list::iterator itr1list<string>::iterator itr}}1=li .begin();1advance(itr3.begin(),itr ,1li.splice(itr,li1,li1.begin(),itr );++for(list<string>::iterator itr=li.begin();itr!=li.end(); itr) *std::cout << itr << " "; return 0;
}
Sortie :