C++ 队列 emplace()函数

C++ 队列 emplace()函数

C ++队列emplace()函数在队列的末尾添加一个新元素,跟随当前的后端元素。该函数在队列上执行插入操作。

语法

template <class... Args> void emplace (Args&&... args);

参数

args :该参数将为新元素的构造转发参数。它指定了新构造元素的值,该值将插入到末尾位置。

返回值

该函数仅用于添加新元素,不返回任何值。

示例1

#include<iostream>
#include<queue>
#include<string>
int main()
{
    std::queue<std::string> newqueue;
    newqueue.emplace("I am the first line");
    newqueue.emplace("I am the second one");
    std::cout << "Contents of new queue: \n";
    while (!newqueue.empty())
    {
        std::cout << newqueue.front() << "\n";
        newqueue.pop ();
    }
    return 0;
}

输出:

I am the first line
I am the second one

示例2

#include<iostream>
#include<queue>
#include<string>
using namespace std;
int main()
{
    queue<string> newpqueue;
    newpqueue.emplace("portal");
    newpqueue.emplace("computer science");
    newpqueue.emplace("is a");
    newpqueue.emplace("Javatpoint");
    cout << "newpqueue = " ;
    while(!newpqueue.empty( ) )
    {
        cout<< newpqueue.front() << " ";
        newpqueue.pop();
    }
    return 0 ;
}   

输出:

Javatpoint is a computer science portal

复杂度

调用emplace_back方法。

数据竞争

队列中的所有元素都被修改,因为添加新元素会改变其他元素的位置。

异常安全

提供等效于对底层容器对象执行的操作的保证。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程