首页 > 编程语言 >c++11新特性之变参模板与完美转发

c++11新特性之变参模板与完美转发

时间:2022-10-22 14:55:20浏览次数:42  
标签:11 c++ vector 运行 转发 默认 模板 构造函数

示例:

 

 运行结果:

 

 

 运行结果:

这说明了,这里的临时变量生命周期很短,它仅生存在push_back()的括号之内。说是即生即死也不为过。

 

 以上两种情况会带来效率问题,因此引入了变参模板和完美转发:

对类的写法稍作调整:

 主函数中:

运行结果:

 将19,与“王大锤”这两个参数直接拿去构造对象(通过构造函数)且直接放入vector中去。

 

继续添加:

 运行结果:

 若在尾部加入新元素:

 

 我们若是提前分配空间:

定义类的vector数组时,例如 vector<student>  vectStu(10);   //这是必须要有默认构造函数的,以便确定占多少内存。

 vector<student>  vectStu;则不一定要有默认构造函数。

因此对类添加默认构造函数:

 主函数中:

 运行结果:

------->  

 

标签:11,c++,vector,运行,转发,默认,模板,构造函数
From: https://www.cnblogs.com/ylww/p/16815967.html

相关文章

  • [CF311B]Cats Transport
    [CF311B]CatsTransport思路我们发现每只小猫有两个对接走时间有影响的参数\(D_i\)和\(T_i\),而实际上我们只需要知道每只小猫刚好被接走的最小出发时刻是多少。所以......
  • P4568 [JLOI2011]飞行路线
    分层图最短路P4568[JLOI2011]飞行路线一、分层图概念分层图最短路:在可以进行分层图的图上解决最短路问题分层图:理解为有多个平行的图模型:在一个正常的图上可以进......
  • 敏捷(SCRUM)学习笔记 1 —— 《SCRUM敏捷软件开发》 (美)Mike Cohn)著 清华大学出版社2
     关键词:《SCRUM敏捷软件开发》——(美)MikeCohn著,清华大学出版社2011版,读书笔记(一) 第一章  为什么敏捷转型难(但值得) 为什么转型困难一、变化来得比以往更快......
  • Vue 笔记6 模板分离
                   ......
  • Dev-C++ 动态调试功能
    Dev动态调试今天发现了Dev还有这个功能,感觉十分神奇,于是记录一下设置要想使用动态调试,我们必须要先打开"产生调试信息"选项这是我们的页面,这是可以看到上方有一行......
  • 【算法训练营day11】LeetCode20. 有效的括号 LeetCode1047. 删除字符串中的所有相邻重
    【算法训练营day11】LeetCode20.有效的括号LeetCode1047.删除字符串中的所有相邻重复项LeetCode150.逆波兰表达式求值LeetCode20.有效的括号题目链接:20.有效的括......
  • 11
    《计算机网络原理》教学大纲课程编号:CE5001课程名称:计算机网络原理英文名称:PrinciplesofComputerNetworks学分/学时:3/48课程性质:必修适用专业:信息安全、网络工程,......
  • P5854 【模板】笛卡尔树
    题目链接P5854【模板】笛卡尔树题目描述给定一个\(1\simn\)的排列\(p\),构建其笛卡尔树。即构建一棵二叉树,满足:每个节点的编号满足二叉搜索树的性质。节点\(i......
  • 3_hugo模板框架
    3_介绍hugo的模板hugo使用go的html/template和text/templete库为基础进行模板操作下面只是基础的gotemplate操作,为了更深度的了解请看go文档go模板提供了一......
  • 定时器、外部中断0,以及查询和中断的模板
    这里拿一个0-60秒表做案例://sbit定义四个数码管unsignedcharcount,miao;voidmain(){  TMOD=0X01;  //设置T0为工作方式1  TH0=0XEE;    TL0=0X00......