纯虚函数和抽象类简介

基本概念和理解

纯虚函数是在一个基类(父类)中说明的虚函数,在基类中没有定义,要求任何派生类(子类)都可以有自己的版本。

抽象基类则表示至少包含一个纯虚成员函数。

纯虚函数的说明形式:virtual 类型 函数名(参数表)=0;
此时的0 代表的意思是,指向函数体的指针的赋值为0;

class point{......};
class xxx;  //抽象类
{pointer center;
..........
public:
    virtual void rotate(int) = 0;//纯虚函数
    virtual void draw()=0;//纯虚函数                

xxx x;//纯虚函数不能建立对象
xxx *p;//可以声明抽象类的指针
xxx f();//抽象类是不能作为返回类型的
void g(xxx);//抽象类是不能作为参数的

虽然不能声明抽象类的实例,也不能将其作为参数类型,函数返回类型或显示转换类型,但是可以**声明抽象类的指针和引用**。

从抽象类派生出来的类必须重新定义纯虚函数。
对于C++,不像java一样有接口。
C++没有接口,则我们可以把抽象基类看成是接口。

猜你喜欢

转载自blog.csdn.net/qq_39818571/article/details/78437735