抽象类是在c++中实现抽象的方式。 c++中的抽象是隐藏内部细节和仅显示功能的过程。 抽象可以通过两种方式实现:
抽象类和接口都可以有抽象所需的抽象方法。
在c++类中,通过将其函数中的至少一个声明为纯虚函数,使其变得抽象。 通过在其声明中放置“= 0
”来指定纯虚函数。 它的实现必须由派生类提供。
下面来看看一个c++中的抽象类的例子,它有一个抽象方法draw()
。 它的实现由派生类:rectangle
和circle
提供。 这两个类对抽象方法draw()
有不同的实现。
#include <iostream>
using namespace std;
class shape
{
public:
virtual void draw()=0;
};
class rectangle : shape
{
public:
void draw()
{
cout < <"drawing rectangle..." < <endl;
}
};
class circle : shape
{
public:
void draw()
{
cout <<"drawing circle..." < <endl;
}
};
int main( ) {
rectangle rec;
circle cir;
rec.draw();
cir.draw();
return 0;
}
执行上面代码,得到以下结果 -
drawing rectangle...
drawing circle...