关于C++构造函数与析构函数的一些问题

    科技2025-10-30  5

    关于C++构造函数的一些问题

    关键字explicit析构函数

    关键字explicit

    C++构造函数explicit关键字.

    析构函数

    对象生命期结束前应该完成对象资源的清理,这个工作由析构函数完成 析构函数其实也是一种特殊的构造函数 在以下情况, 析构函数将被自动调用:

    如果定义一个全局对象,则当程序离开其作用域时,该全局对象的析构函数将被自动调用;如果一个对象被定义在一个函数体内,则当这函数结束时, 该对象的析构函数将被自动调用;若一个对象是使用new运算符动态创建,在使用delete运算符释放存储空间时, delete运算符将自动调用该对象的析构函数。

    一般来讲,编译器会自动生成析构函数 或者可以显式的说明

    ~C() = default //让编译器生成析构函数 ~C() = delete //让编译器不自动生成析构函数

    参考: ymj老师的课件

    Processed: 0.013, SQL: 8