English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ A função de combinação da lista é usada para transferir elementos da lista y para o contêiner de lista na posição especificada, o que resulta em uma alteração do tamanho dos dois listas.
void splice(iterator pos, list& y); void splice(iterator pos, list& y, iterator pos1); void splice(iterator pos, list& y, iterator first, iterator last);
y: É um objeto de lista do tipo de conteúdo de transmissão.
pos: Ele define a posição de inserção do elemento y.
pos1:pos1Os elementos apontados serão transmitidos.
(first,last):Ele define o intervalo de elementos a serem transmitidos.
Ele não retorna nenhum valor.
Vamos ver um exemplo simples
#include <iostream> #include<list> using namespace std; int main() { list<int> li={1,2,3,4}; list<int> li1={5,6,7,8}; list<int>::iterator itr=li.begin(); li.splice(itr, li1); for(list<int>::iterator itr=li.begin();itr!=li.end();++itr) std::cout << *itr << " "; return 0; }
Saída:
5 6 7 8 1 2 3 4
Vamos ver um exemplo simples
#include <iostream> #include<list> using namespace std; int main() { list<int> li={9,11,12,13}; list<int> li1={10,6,7,8}; list<int>::iterator itr=li.begin(); list<int>::iterator itr1=li1.begin(); ++itr; li.splice(itr, li1,itr1); for(list<int>::iterator itr=li.begin();itr!=li.end();++itr) std::cout << *itr << " "; return 0; }
Saída:
9 10 11 12 13
Vamos ver um exemplo simples
#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<string>::iterator itr1=li1.begin(); advance(itr1,3); li.splice(itr, li1, li1.begin(), itr1); for(list<string>::iterator itr = li.begin(); itr != li.end();++itr) std::cout << *itr << " "; return 0; }
Saída:
java é um linguagem de programação