编程语言
首页 > 编程语言> > C++抽象类

C++抽象类

作者:互联网

纯虚函数:纯虚函数是一个在基类中声明的虚函数,它在该基类中没有定义具体的操作内容,要求各派生类根据实际需要定义自己的版本

virtual 函数类型 函数名(参数表)=0;//等于0表示没有函数体

带有纯虚函数的类称为抽象类,不可实例化

抽象类的作用:将有关的数据和行为组织在一个继承层次结构中,保证派生类具有要求的行为。对应暂时无法实现的函数,可以声明为纯虚函数,留给派生类去实现。

需要注意的是,抽象类只能作为基类来使用,不能定义抽象类的对象。当抽象类的派生类实现了继承而来的纯虚函数后才能实例化对象。

#include "stdafx.h"
using namespace std;
class Base1
{
public:
	virtual void display()=0;
};
void Base1::display()
{
	cout<<"Base1::display()"<<endl;
}
class Base2:public Base1
{
public:
	virtual void display();
};
void Base2::display()
{
	cout<<"Base2::display()"<<endl;
}
class derived:public Base2
{
public:
	virtual void display();
};
void derived::display()
{
	cout<<"derived::display()"<<endl;
}
void fun(Base1* pt)
{
	pt->display();
}
int main()
{
	/*Base1 a;*/
	Base2 b;
	derived c;
	//fun(&a);
	fun(&b);
	fun(&c);
	system("Pause");
	return 0;
}

 

标签:函数,派生类,C++,Base1,纯虚,基类,抽象类
来源: https://blog.csdn.net/weixin_40903417/article/details/87970443