Libreria di elenchi C ++ - funzione emplace ()
Descrizione
La funzione C ++ std::list::emplace()estende la lista inserendo un nuovo elemento in una data posizione. Questa funzione membro aumenta la dimensione dell'elenco.
Dichiarazione
Di seguito è riportata la dichiarazione per la funzione std :: list :: emplace () nel modulo std :: list header.
C ++ 11
template <class... Args>
iterator emplace (const_iterator position, Args&&... args);
Parametri
position - Posizione nell'elenco in cui deve essere inserito il nuovo elemento.
args - Argomenti inoltrati per costruire il nuovo elemento.
Valore di ritorno
Restituisce un iteratore ad accesso casuale che punta all'elemento appena posizionato.
Eccezioni
Se la riallocazione fallisce, viene generata l'eccezione bad_alloc .
Complessità temporale
Costante cioè O (1)
Esempio
Il seguente esempio mostra l'utilizzo della funzione std :: list :: emplace ().
#include <iostream>
#include <list>
using namespace std;
int main(void) {
list<int> l = {3, 4, 5};
auto it = l.emplace(l.begin(), 2);
l.emplace(it, 1);
cout << "List contains following element" << endl;
for (auto it = l.begin(); it != l.end(); ++it)
cout << *it << endl;
return 0;
}
Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:
List contains following element in reverse order
1
2
3
4
5