Descripción
La función C ++ std::stack::emplace()construye e inserta un nuevo elemento en la parte superior de la pila. El nuevo elemento se inserta en un lugar, es decir, sin realizar la operación de copiar o mover.
Declaración
A continuación se muestra la declaración de la función std :: stack :: emplace () del encabezado std :: stack.
C ++ 11
template <class... Args>
void emplace (Args&&... args);
Parámetros
args - Argumentos enviados para construir los nuevos elementos.
Valor devuelto
Ninguna
Excepciones
Depende del contenedor subyacente.
Complejidad del tiempo
Constante es decir O (1)
Ejemplo
El siguiente ejemplo muestra el uso de la función std :: stack :: emplace ().
#include <iostream>
#include <stack>
using namespace std;
int main(void) {
stack<int> s;
for (int i = 0; i < 5; ++i)
s.emplace(i + 1);
while (!s.empty()) {
cout << s.top() << endl;
s.pop();
}
return 0;
}
Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:
Stack contents are
5
4
3
2
1