std::list::push_back
Z cppreference.com
void push_back( const T& value ); |
(1) | |
void push_back( T&& value ); |
(2) | (od C++11) |
Dodaje nowy element value na koniec kontenera.
1) Nowy element jest inicjalizowany jako kopia value.
2) value jest przenoszone do nowego elementu.
Żadne iteratory ani referencje nie zostają unieważnione.
Parametry
| value | - | wartość dodawanego elementu |
| Wymagania względem typów | ||
| -T musi spełniać wymagania CopyInsertable aby użyć przeciążenia (1). | ||
| -T musi spełniać wymagania MoveInsertable aby użyć przeciążenia (2). |
Zwracana wartość
(none)
Złożoność
Stała.
Wyjątki
Jeśli zostanie wyrzucony wyjątek (co może nastąpić w związku z alokacją pamięci Allocator::allocate() lub konstrukcją/przypisaniem elementu za pomocą kopiowania lub przeniesienia), funkcja nie zmieni wartości kontenera (strong exception guarantee).
Przykład
#include <list>
#include <iostream>
#include <iomanip>
int main()
{
std::list<std::string> numbers;
numbers.push_back("abc");
std::string s = "def";
numbers.push_back(std::move(s));
std::cout << "list holds: ";
for (auto&& i : numbers) std::cout << std::quoted(i) << ' ';
std::cout << "\nMoved-from string holds " << std::quoted(s) << '\n';
}
Wynik:
list holds: "abc" "def"
Moved-from string holds ""
Zobacz także
(C++11) |
konstruuje element "w miejscu" na końcu (publiczna metoda) |
| wstawia element na początek (publiczna metoda) | |
| usuwa ostatni element (publiczna metoda) |