C++ 接口(抽象类)
抽象类是在C++中实现抽象的方法。在C++中,抽象是隐藏内部细节,只展示功能的过程。有两种方式可以实现抽象:
- 抽象类
- 接口
抽象类和接口都可以有抽象方法,这对于实现抽象是必要的。
C++抽象类
在C++中,通过将一个类的至少一个函数声明为 纯虚函数 ,来使类成为抽象类。纯虚函数的声明是在其前面加上”= 0″。它的实现必须由派生类提供。
让我们看一个在C++中的抽象类的例子,其中有一个抽象方法draw()。它的实现由派生类Rectangle和Circle提供。这两个类有不同的实现。
#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...