码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • cpp11 return返回类对象的过程


    code

    1. #include <iostream>
    2. using std::cout;
    3. using std::endl;
    4. class A {
    5. public:
    6. A() {cout << "A()" << endl;}
    7. ~A() {cout << "~A()" << endl;}
    8. A(A& that) {cout << "A(A&)" << endl;}
    9. A& operator=(A& that) {cout << "operator=(A&)" << endl;}
    10. A(A&& that) {cout << "A(A&&)" << endl;}
    11. A& operator=(A&& taht) {cout << "operator=(A&&)" << endl;}
    12. };
    13. A demoA(void) {
    14. A a;
    15. cout << "------------" << endl;
    16. return a;
    17. }
    18. int main() {
    19. A a = demoA();
    20. return 0;
    21. }

    编译

    g++ cpp11_return.cpp -std=c++11 -fno-elide-constructors

    -fno-elide-constructors禁用nrvo优化

    现象

    解释

    1.

    demoA函数中构造a

    2.

    demoA函数返回时,用a 右值构造demoA函数的返回值

    3.

    demoA函数结束,析构a

    4.

    A a=demoA();语句,使用demoA的返回值 右值构造a

    5.

    A a=demoA()语句结束,析构demoA的返回值

    6.

    main函数结束,析构a

  • 相关阅读:
    【论文速读】| 大语言模型引导的协议模糊测试
    实用TCP协议(2):TCP 参数优化
    完整的 HTTPS 的通信
    【Transformers】第 8 章 :使Transformers高效生产
    Nginx入门到精通2-nginx框架
    支付宝手机网站H5支付
    MSDC 4.3 接口规范(16)
    nRF Connect for Desktop[自己的APP环境搭建]
    逆波兰表达式
    解决Ubuntu下SSH无法连接的问题
  • 原文地址:https://blog.csdn.net/weixin_45050132/article/details/133235495
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号