要使用智能指针(SP,WP)来管理类的对象,要满足两个条件:
1. 这个类必须是Refbase的子类或者间接子类。
2. 这个类要定义虚析构函数: virtual ~MyClass()
为何要定义虚析构函数呢? 目的是在父类指针引用子类对象的情况下,如果父类定义了虚析构函数,那么在delete父类指针时,就会先调用子类的析构函数,然后再依次调用父类的析构函数,否则的话,delete 父类指针就只会调用父类的析构函数了。
要使用智能指针(SP,WP)来管理类的对象,要满足两个条件:
1. 这个类必须是Refbase的子类或者间接子类。
2. 这个类要定义虚析构函数: virtual ~MyClass()
为何要定义虚析构函数呢? 目的是在父类指针引用子类对象的情况下,如果父类定义了虚析构函数,那么在delete父类指针时,就会先调用子类的析构函数,然后再依次调用父类的析构函数,否则的话,delete 父类指针就只会调用父类的析构函数了。