MJJ工作室
  • 首页
  • 论坛
  • 短链接在线生成
  • 打赏作者
  • 首页
  • 论坛
  • 短链接在线生成
  • 打赏作者
评分
分享
QQ空间微博QQ好友海报分享复制链接
  • 首页
  • 社区
  • 论坛
  • V2EX
  • 正文

c++函数返回临时变量和局部变量,有什么区别?

cherbim等级-LV6-MJJ工作室3年前发布
1100

A e = returnValue();只打印了一句,我理解执行打印了 default constructor ,然后 return 时经过 RVO 优化,就少打印一次。然后经过 里面提到的 纯右值的优化,又少打印一次。A e2 = returnValue_2();打印两次是因为:执行打印了 default constructor ,然后 return 时经过 RVO 优化,就少打印一次。但由于函数返回值类型为 A&&,作为 亡值,就必须调用 移动构造函数。但 A e1 = returnValue_1();为什么打印这两句阿?(它的返回值类型就是 A ,不是 A&&啊)顺便问下,移动赋值操作符这里的提示是啥意思呀

评分
欢迎为Ta评分
分享
QQ空间微博QQ好友海报分享复制链接
收藏
请登录后发表评论

登录注册

    没有回复内容

  • MJJ工作室

    MJJ工作室

    一个分享互联网羊毛和福利的地方
  • 友链申请 一键打赏 广告合作 关于我们

    Copyright © 2020 ·  MJJ工作室 · cherbim
    扫一扫加微信-MJJ工作室
  • 扫码加入QQ群-MJJ工作室

    扫码加入QQ群

    扫码添加TG频道-MJJ工作室

    扫码添加TG频道
扫码添加微信-MJJ工作室
在手机上浏览此页面