我是靠谱客的博主 从容裙子,这篇文章主要介绍C++ 新特性 emplace_back() 与 push_back()的区别,现在分享给大家,希望可以做个参考。

C++ 新特性 emplace_back() 与 push_back()的区别

今日在leetcode中发现了emplace_back(),然后并不知道他是干什么用的
现在搜索了一下 做一个总结

vector是我们常用的容器,向其中增加元素的常用方法有:emplace_back和push_back两种。

push_bach():

首先需要调用构造函数构造一个临时对象,然后调用拷贝构造函数将这个临时对象放入容器中,然后释放临时变量。

emplace_back():

这个元素原地构造,不需要触发拷贝构造和转移构造。

总结

一般都可以用emplace_back()代替push_back(),从而减少内存开销。

最后

以上就是从容裙子最近收集整理的关于C++ 新特性 emplace_back() 与 push_back()的区别的全部内容,更多相关C++内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(81)

评论列表共有 0 条评论

立即
投稿
返回
顶部