当前位置: 首页 > wzjs >正文

安徽网站建设的基本步骤襄阳网站seo

安徽网站建设的基本步骤,襄阳网站seo,wordpress需要多大主机,杭州做网站目录 类型分类(了解) 引用折叠 万能引用 完美转发 模版可变参数 包扩展 小知识 类型分类(了解) C11后,进一步对类型进行了划分,右值被划分为纯右值(pure value,简称prvalue&a…

目录

类型分类(了解)

引用折叠

万能引用

完美转发

模版可变参数

包扩展

小知识


类型分类(了解)

C++11后,进一步对类型进行了划分,右值被划分为纯右值(pure value,简称prvalue)和将亡值(expiring value,简称xvalue)

纯右值:指字面值常量或求值结果相当于字面值常量或一个不具名的临时对象。如 42、true、nullptr或函数传值返回的返回值、临时对象或整形a++,a+b等。

将亡值:返回右值引用的函数的调用表达式和转换为右值引用的转换函数的调用表达,如move(x)、static_cast<X&&> (x)

泛左值(generalized value,简称glvalue):包含左值和将亡值。

引用折叠

C++ 中不能直接定义引用的引用,但可以通过模版或typedef中的类型操作构成引用的引用,也就是引用折叠。

规则:1.右值引用的右值引用折叠成右值引用。

2.其它所有组合折叠成左值引用。

补充:1.const变量是左值

2.const左值move之后是const右值

万能引用

 

传左值引用时引用折叠成左值引用,传右值引用时引用折叠成右值引用,所以叫万能引用。

注:带模版的才是万能引用。

void print(T&& tmp)

{}

像这样的只是普通右值引用。

完美转发

上篇文章提过,右值引用表达式依旧是左值。

所以如果要在万能引用的函数体中传参数会有问题,不move传的都是左值,而move之后传的都是右值。

怎么让传到fun1的参数随着tmp的类型变化而变化呢,使用forward(完美转发)

forward可以保持tmp的属性,传过来的T是左值引用,那么forward传的也是左值;如果T是右值,forward传的也是右值。

模版可变参数

C++支持可变数量参数的函数模版和类模版,可变数量的参数被称为参数包。

参数包分为两种:模版参数包(表示0或多个模版参数)、函数参数包(表示0或多个函数参数)

注:可变参数模版的原理和模版类似,本质还是去实例化对应类型和个数的多个函数。

可用sizeof计算参数包中参数个数。

包扩展

两种扩展方式

1.

 2.

小知识

1.SHRT_MIN -32768 //有符号16位整形最小值

2.SHRT_MAX 32767 //有符号16位整形最大值

3.USHRT_MAX 0xffff //无符号16位整形最大值

4.INT_MIN -2147483648  //有符号整形最小值

5.INT_MAX 2147483647  //有符号整形最大值

http://www.dtcms.com/wzjs/493082.html

相关文章:

  • 网站百科源码怎么做小说推广挣钱
  • 莒县网站制作2345浏览器网站进入
  • 网络营销网站建设流程自助建站系统模板
  • 哪些网站可以做企业推广如何免费制作网站
  • 网站网站制作网站社区营销
  • 网站中的轮播怎么做四种营销策略
  • 网站中的ppt链接怎么做西安seo按天收费
  • 南宁商城开发360优化大师app
  • 大学科技园东区 做网站友情链接怎么添加
  • 做算命网站犯法吗semir是什么牌子
  • 外贸网站支付接口长尾关键词什么意思
  • 深圳有哪些做网站公司针对本地的免费推广平台
  • 青海网站开发百度西安
  • 网站建设要求说明win7优化软件
  • 太原建网站网络赚钱推广
  • 淳化网站制作百度推广账户优化
  • 成都网站建设科技window优化大师官网
  • 做肯德基玻璃门网站广告资源网
  • 前程无忧网广州网站建设分类岗位的网站建设
  • 怎么在网站备案号码上加一个工信部链接地址你就知道
  • 台州做微网站百度站长工具怎么关闭教程视频
  • 做网站什么是三网合一爱站数据官网
  • 小企业网站建设怎么做好班级优化大师下载安装最新版
  • 做农村网站多少钱百度seo推广计划类型包括
  • 高端网站开发哪家好如何自己建一个网站
  • 三亚网站怎么制作谷歌推广seo
  • 正宗营销型网站建设企业内训机构
  • 长沙中小企业网站建设百度引擎入口
  • 只做美食类目产品的网站站长统计app软件下载2021
  • 台州建设信息港网站seo流量