Descrição
A função C ++ std::stack::emplace()constrói e insere um novo elemento no topo da pilha. O novo elemento é inserido em um local, ou seja, sem executar a operação de copiar ou mover.
Declaração
A seguir está a declaração para o formulário de função std :: stack :: emplace () std :: stack header.
C ++ 11
template <class... Args>
void emplace (Args&&... args);
Parâmetros
args - Argumentos encaminhados para construir os novos elementos
Valor de retorno
Nenhum
Exceções
Depende do contêiner subjacente.
Complexidade de tempo
Constante, ou seja, O (1)
Exemplo
O exemplo a seguir mostra o uso da função 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;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
Stack contents are
5
4
3
2
1