C++ emplace emplace_back是什么

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ emplace emplace_back是什么相关的知识,希望对你有一定的参考价值。

在C++开发过程中,我们经常会用STL的各种容器,比如vector,map,set等,这些容器极大的方便了我们的开发。在使用这些容器的过程中,我们会大量用到的操作就是插入操作,比如vector的push_back,map的insert,set的insert。这些插入操作会涉及到两次构造,首先是对象的初始化构造,接着在插入的时候会复制一次,会触发拷贝构造。但是很多时候我们并不需要两次构造带来效率的浪费,如果可以在插入的时候直接构造,就只需要构造一次就够了。

总结相关语法如下

vector

emplace <->  insert

emplace_back​  <-> ​push_back

set

emplcace <->  insert

map

emplace <->  insert


原文链接:https://blog.csdn.net/windpenguin/article/details/75581552

以上是关于C++ emplace emplace_back是什么的主要内容,如果未能解决你的问题,请参考以下文章

在C++里,emplace_back可以完全取代push_back吗?

C++的emplace_back函数介绍

C++中出现错误has no member named 'emplace_back怎么办?

学习 emplace_back() 和 push_back 的区别 emplace_back效率高

如何使用向量的 emplace_back 函数? [关闭]

为啥 emplace_back() 不使用统一初始化?