Vector Emplace Function

C++ Vector emplace

This function inserts a new element just before the position pos and size of the vector container increases.

Syntax

Consider a vector 'v'. Syntax would be:

Example

Iterator it=v.emplace(pos,args);

Parameter

pos : It defines the position before which the new element is to be inserted.

args : Arguments forwarded to construct the new element.

Return value

It returns an iterator to the newly inserted element.

Example 1

Let's see a simple example.

Example

#include <iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> v{1,2,3,4,5};
cout<<"Elements of vector v are :";
for(int i=0;i<v.size();i++)
cout<<v[i]<<" ";
cout<<'\n';
cout<<"After adding two elements, elements are :";
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;
}

Output:

Output

Elements of vector v are :1 2 3 4 5
After adding two elements, elements are :1 2 9 8 3 4 5

In this example, size of the vector container increases using emplace function.

Example 2

Let's see a simpleanother example.

Example

#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;
}

Output:

Output

Mango apple strawberry banana

In this example, the size of the vector container increases by adding new string into the vector using emplace function.

Input Required

This code uses input(). Please provide values below: