zoukankan      html  css  js  c++  java
  • C++ 析构函数

    ——用构造函数创建对象后,程序负责跟踪该对象,直到其过期为止。对象过期时,程序将自动调用一个特殊的成员函数—析构函数完成清理工作,如释放构造函数使用new分配的内存。

    析构函数的形式:

    在类名前加上~,没有返回值和声明类型,没有参数:

    ~Stock();
    

      

    调用:

    • 对于被声明为自动变量的类对象,过期时析构函数将自动调用(我的程序中若程序结束时尚有该类型类对象未过期,则将自动从后往前依此调用析构函数)。
    • 对于被声明为静态变量的对象(外部、静态、静态外部或来自名称空间),则在程序结束时(晚于自动变量类型对象)调用对象的析构函数。

    什么时候创建:

    如果构造函数使用了new,则必须提供使用delete的析构函数。

    自动创建:

    没有提供析构函数,编译器将隐式地声明一个默认析构函数,并在发现导致对象被删除的代码后,提供默认析构函数的定义。

  • 相关阅读:
    LeetCode Best Time to Buy and Sell Stock
    LeetCode Scramble String
    LeetCode Search in Rotated Sorted Array II
    LeetCode Gas Station
    LeetCode Insertion Sort List
    LeetCode Maximal Rectangle
    Oracle procedure
    浏览器下载代码
    Shell check IP
    KVM- 存储池配置
  • 原文地址:https://www.cnblogs.com/suui90/p/13036756.html
Copyright © 2011-2022 走看看