C++ 虚析构和纯虚析构

Posted 行码阁119

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 虚析构和纯虚析构相关的知识,希望对你有一定的参考价值。

 

 

# include<iostream>
# include<string>
using namespace std;


//虚析构和纯虚析构
class Animal
{
public:
	Animal()
	{
		cout << "Animal的构造函数调用" << endl;
	}
	//利用虚析构可以解决父类指针释放子类对象时不干净的问题
	//virtual ~Animal()
	//{
	//	cout << "Animal的析构函数调用" << endl;
	//}
	//有了纯虚析构后,这个类也属于抽象类,无法实例化对象
	virtual ~Animal() = 0;
	virtual void speak() = 0;

};

Animal::~Animal()
{
	cout << "Animal的纯析构函数调用" << 

以上是关于C++ 虚析构和纯虚析构的主要内容,如果未能解决你的问题,请参考以下文章

c++ 多态学习

为啥我们需要 C++ 中的纯虚析构函数?

为啥纯虚析构函数需要实现

析构函数的虚析构和非虚析构调用的差别

C++中的各种“虚“-- 虚函数纯虚函数虚继承虚基类虚析构纯虚析构抽象类讲解

C++中的各种“虚“-- 虚函数纯虚函数虚继承虚基类虚析构纯虚析构抽象类讲解