C++构造函数/析构函数/赋值函数(4)

             a.编译器总会为我们合成一个析构函数,其按照对象创建时的逆序撤销每个非static成员,因此,它按照成员在类中申明的次序的逆序撤销成员。

        b.缺省的析构函数并不删除指针成员指向的对象

             c.析构函数与赋值操作符和复制构造函数之间的一个重要区别是,及时我们自己编写了自己的析构函数,缺省的析构函数任然运行

        d.对于类类型的对象,合成析构函数调用其析构函数完成对象的释放;对于内置类型的对象,合成析构函数则不做什么操作

       3.何时编写显式析构函数

    许多类不需要显式析构函数,尤其具有构造函数的类不一定需要定义自己的析构函数。仅在有些仅在有些工作需要析构函数完成时,才需要析构函数(显式的)。析构函数并不仅限于用来释放资源,一般而言,析构函数可以执行任意操作,该操作是类设计者希望该类对象在使用完毕后执行的。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/b07621f91a28989cad46eeac8c702217.html