首页 > 其他分享 >STL库——push_back()与emplace_back()的区别

STL库——push_back()与emplace_back()的区别

时间:2022-10-27 15:24:24浏览次数:54  
标签:容器 emplace STL 元素 back push 拷贝

相同点
push_back()与emplace_back()都是往尾部添加一个元素

不同点
底层实现机制不同:
push_back()向容器尾部添加元素时,首先会创建这个元素,然后再将这个元素拷贝或者移动到容器中(如果拷贝的话,事后会自行销毁先前创建的这个元素)
emplace_back()在实现的时候,是直接在容器尾部创建这个元素,省去拷贝和移动元素的过程

标签:容器,emplace,STL,元素,back,push,拷贝
From: https://www.cnblogs.com/dh2021/p/16832343.html

相关文章

  • 恢复训练——STL笔记
    \(set\)小结\(set<type>s:\)定义一个集合\(s\);\(s.clear():\)清空集合\(s\)\(s.insert(val):\)往集合\(s\)中插入一个元素\(val\)\(s.erase(val):\)从......
  • Git极简教程(4)--commit级别的操作+总结 commit和push 不一样哦
    Git极简教程(4)--commit级别的操作+总结commit和push不一样哦commit是一个Git的最小改动单位。我们在编辑文件的时候,最小改动单位自然是一个字,但是不必要改一个字就增加......
  • Android开发页面重定向导致WebvView.canGoBack一直返回true的解决方法
    Android开发页面重定向导致WebvView.canGoBack一直返回true的解决方法原因:打开页面A的时候重定向到页面B,页面B回退的时候回退到页面A,但是接着又重定向到页面B,所以canGoB......
  • 列表--list容器的使用(STL熟练掌握)
    题目描述一个学校里老师要将班上NN个同学排成一列,同学被编号为1\simN1∼N,他采取如下的方法:先将11号同学安排进队列,这时队列中只有他一个人;2-N2−N号同学依次入列,编号为i的......
  • pg_basebackup备份恢复(带自定义表空间)
    环境:OS:Centos7DB:13.8#####################################创建自定义表空间##############################1.创建表空间自定义目录su-postgresmkdir-p/opt/pg1......
  • STL函数之全排列next_permutation
    题目描述牛牛的作业薄上有一个长度为n的排列A,这个排列包含了从1到n的n个数,但是因为一些原因,其中有一些位置(不超过10个)看不清了,但是牛牛记得这个数列顺序对的数量是k,顺......
  • chrome extension mv3 在safari浏览器 background不起作用
    哈喽雷迪森and杰特们,大家跟我一起来,哎呀呀哎呀呀。。。扯远了 今天给大家分享一个chrome插件开发在safari浏览器上(background.js以下简称bg)不起作用的问题解决记录......
  • requestVideoFrameCallback() 简单实例
    在文章《​​浏览器视频帧操作方法requestVideoFrameCallback()简介​​》中介绍了基本的使用情况,本文来体验一下其使用过程,后续将增加一些酷炫的实例。点击开始播放视频......
  • Javaweb基础复习------EL表达式+JSTL-if&foreach
    EL表达式------简化JSP页面的Java代码主要功能是------获取数据(语法:${data})举例://ServletDemo1.javapackagecom.example.servlet;importcom.example.pojo.User;i......
  • 使用 JSTL 报错:javax/servlet/jsp/tagext/TagLibraryValidator
    jsp使用jstl,访问页面之后报错,如上图所示。我的Tomcat版本是10.0,导入的jstl是javax.servlet下的,应该导入以下几个包:<dependency><groupId>mysql</groupId>......