码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • c++ 类初始化 销毁释放内存


    目录

    第一种 new delete

    第二种 析构函数自动销毁内存

    直接初始化

    程序关闭会自动释放


    第一种 new delete

    1. Base* b = new Derive();
    2. delete b;

    第二种 析构函数自动销毁内存

    二、析构函数
    C++ 的类中可以定义一个特殊的清理函数
    这个特殊的清理函数叫做析构函数
    析构函数的功能与构造函数相反
    定义:~ClassName()
    析构函数没有参数也没有返回值类型声明
    析构函数在对象销毁时自动被调用
            下面开始简单使用析构函数:

    1. #include
    2.  
    3. class Test
    4. {
    5. public:
    6.     Test()
    7.     {
    8.         printf("Test()\n");
    9.     }
    10.     ~Test()
    11.     {
    12.         printf("~Test()\n");
    13.     }
    14. };
    15.  
    16. int main()
    17. {
    18.     Test t;
    19.     
    20.     return 0;
    21. }


            输出结果如下:

             t 虽然是对象,但是本质上也是局部变量,在 return 0 之前会销毁,t 被销毁时析构函数会被自动调用。

            下面再来看一个例子:

    1. #include
    2.  
    3. class Test
    4. {
    5.     int mi;
    6. public:
    7.     Test(int i)
    8.     {
    9.         mi = i;
    10.         printf("Test(): %d\n", mi);
    11.     }
    12.     ~Test()
    13.     {
    14.         printf("~Test(): %d\n", mi);
    15.     }
    16. };
    17.  
    18. int main()
    19. {
    20.     Test t(1);
    21.     
    22.     Test* pt = new Test(2);
    23.     
    24.     delete pt;
    25.     
    26.     return 0;
    27. }

    结果: 



    原文链接:https://blog.csdn.net/weixin_43129713/article/details/123668697

    直接初始化

    1. int class_num = sizeof(class_names) / sizeof(class_names[0]);
    2. YOLO yolo(class_num, input_w, input_h);

    程序关闭会自动释放

    1. YOLO::~YOLO()
    2. {
    3. std::cout << "yolo destroy" << std::endl;
    4. this->context->destroy();
    5. this->engine->destroy();
    6. this->runtime->destroy();
    7. }

  • 相关阅读:
    为啥外行都觉得程序员的代码不值钱?
    Ubuntu22.04安装Mongodb7.0
    基于Qt QTreeView|QTreeWidget控件使用简单版
    echarts问题总结2
    逆向-beginners之乘法(加法实现)
    使用mysql语句对分组结果进行再次筛选
    放大镜
    Android学习笔记 2.3.1 文本框TextView和编辑框EditText的功能和用法
    6547网新增信息素养大赛真题及白名单考级真题
    SourceTree 这是一个无效的源路径/URL
  • 原文地址:https://blog.csdn.net/jacke121/article/details/127837364
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号