Język C++
list::insert
[metoda] Wstawia jeden element lub wiele elementów do kontenera listy na określonej pozycji.Składnia
#include <list>
namespace std
{
template < class Type, class Allocator >
class list
{
public:
iterator insert( iterator _Where, const Type & _Val );
void insert( iterator _Where, size_type _Count, const Type & _Val );
template < class InputIterator >
void insert( iterator _Where, InputIterator _First, InputIterator _Last );
};
}
Argumenty
Zwracana wartość
Pierwsza metoda zwraca iterator, który wskazuje na wstawiony element. Pozostałe metody nie zwracają żadnej wartości.
Opis szczegółowy
Metoda wstawia nowe elementy do kontenera listy na określonej pozycji. Pozycję określa argument
_Where. Elementy są wstawiane przed elementem na który wskazuje iterator
_Where.
Złożoność obliczeniowa metody: O(1).
Zagadnienia powiązane
erase | Usuwa jeden element lub wiele elementów z kontenera listy występujących na podanej pozycji lub w podanym zakresie. (metoda) |
---|
Przykłady
#include <iostream>
#include <list>
int main()
{
std::list < int > listaLiczb;
std::list < int >::iterator i;
listaLiczb.push_back( 1 );
listaLiczb.push_back( 3 );
listaLiczb.push_back( 4 );
listaLiczb.push_back( 5 );
std::cout << "Elementy listy:" << std::endl;
for( i = listaLiczb.begin(); i != listaLiczb.end(); i++ )
{
std::cout << * i << ", ";
}
std::cout << std::endl;
i = listaLiczb.begin();
listaLiczb.insert( ++i, 2 );
std::cout << "Elementy listy:" << std::endl;
for( i = listaLiczb.begin(); i != listaLiczb.end(); i++ )
{
std::cout << * i << ", ";
}
return 0;
}
#include <iostream>
#include <list>
int main()
{
std::list < int > listaLiczb;
std::list < int >::iterator i;
listaLiczb.push_back( 1 );
listaLiczb.push_back( 3 );
listaLiczb.push_back( 4 );
listaLiczb.push_back( 5 );
std::cout << "Elementy listy:" << std::endl;
for( i = listaLiczb.begin(); i != listaLiczb.end(); i++ )
{
std::cout << * i << ", ";
}
std::cout << std::endl;
i = listaLiczb.begin();
listaLiczb.insert( ++i, 5, 2 );
std::cout << "Elementy listy:" << std::endl;
for( i = listaLiczb.begin(); i != listaLiczb.end(); i++ )
{
std::cout << * i << ", ";
}
return 0;
}
#include <iostream>
#include <list>
int main()
{
std::list < int > listaLiczb_A;
std::list < int > listaLiczb_B;
std::list < int >::iterator i;
listaLiczb_A.push_back( 6 );
listaLiczb_A.push_back( 7 );
listaLiczb_A.push_back( 8 );
listaLiczb_A.push_back( 9 );
listaLiczb_A.push_back( 10 );
listaLiczb_B.push_back( 1 );
listaLiczb_B.push_back( 2 );
listaLiczb_B.push_back( 3 );
listaLiczb_B.push_back( 4 );
listaLiczb_B.push_back( 5 );
std::cout << "Elementy listy 'A'" << std::endl;
for( i = listaLiczb_A.begin(); i != listaLiczb_A.end(); i++ )
{
std::cout << * i << std::endl;
}
std::cout << "Elementy listy 'B'" << std::endl;
for( i = listaLiczb_B.begin(); i != listaLiczb_B.end(); i++ )
{
std::cout << * i << std::endl;
}
listaLiczb_B.insert( listaLiczb_B.end(), listaLiczb_A.begin(), listaLiczb_A.end() );
std::cout << "Elementy listy 'A'" << std::endl;
for( i = listaLiczb_A.begin(); i != listaLiczb_A.end(); i++ )
{
std::cout << * i << std::endl;
}
std::cout << "Elementy listy 'B'" << std::endl;
for( i = listaLiczb_B.begin(); i != listaLiczb_B.end(); i++ )
{
std::cout << * i << std::endl;
}
return 0;
}
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.