笔记来源:51CTO学习网站
C++基础笔记(七)
纯虚函数和抽象类
1.纯虚函数
-纯虚函数:指被标明为不具体实现的虚成员函数;
virtual 类型 函数名(参数表)=0;
-纯虚函数是在基类中为子类保留的一个位置,以便子类用自己的实在虚函数定义来重载。如果在基类中没有保留位置,则就不能重载;
-纯虚函数是一个没有定义函数语句的基类虚函数,纯虚函数的值是0;派生类必须为每个基类纯虚函数提供一个相应的函数定义。
2.抽象类
-带有纯虚函数的类称为抽象类
class 类名
{
//纯虚函数
virtual 类型 函数名(参数表)=0;
...
}
example:
class CStudent
{
public:
//添加课程
void AddCourse(int nHours,float fScore)
//打印出学员的信息
virtual void Print()=0;
...
};
**-作用:**抽象类为抽象和设计的目的而声明,将有关的数据和行为组织在一个继承层次结构中,保证派生类具有要求的行为。对于暂时无法实现的函数,可以声明为纯虚函数,留给派生类去实现;
**-注意:**抽象类只能作为基类使用;不能声明抽象类的对象;构造函数不能是虚函数,析构函数可以是虚函数。
-只实现了部分纯虚函数的类ÿ