English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
É C++ 11 Membro da função novo, adicionado ao vector contêiner para inserir um novo elemento antes da posição especificada.
Nota: a função emplace() pode inserir apenas um elemento por vez, não múltiplos.
A sintaxe do vetor (vector) v é:
Iterator it = v.emplace(pos, args);
pos:Define a posição onde o novo elemento será inserido.
args:Passam os parâmetros usados para construir o novo elemento.
Ele retorna o iterador para o elemento inserido recentemente.
Vamos ver um exemplo simples.
#include <iostream> #include<vector> using namespace std; int main() { vector<int> v{1,2,3,4,5}; cout << "Os elementos do vetor v são:"; for(int i=0; i<v.size(); i++) cout << v[i] << " "; cout << '\n'; cout << "Depois de adicionar dois elementos, os elementos são:"; vector<int>::iterator it = v.emplace(v.begin(),+2,8); v.emplace(it,9); for(int i=0; i<v.size(); i++) cout << v[i] << " "; return 0; }
Saída:
Os elementos do vetor v são:1 2 3 4 5 Depois de adicionar dois elementos, os elementos são:1 2 9 8 3 4 5
Neste exemplo, o tamanho do contêiner de vetor é aumentado usando a função emplace().
Vamos ver um exemplo simples outro.
#include <iostream> #include<vector> using namespace std; int main() { vector<string> v{"mango","apple","banana"}; v.emplace(v.begin()}+2,"strawberry"); for(int i=0; i<v.size(); i++) std::cout << v[i] << " "; return 0; }
Saída:
Mango apple strawberry banana
Neste exemplo, aumentando o tamanho do container vector (vetor) adicionando uma nova string usando a função emplace().