这里先占个位,以后会慢慢补充,这里先做一下名词解释。
【虚函数】:在某基类中被声明为virtual,并在一个或多个派生类中被重新定义的成员函数。虚函数的定义:
class <类名>
{
virtual <类型><函数名>(<参数表>);
…
};
虚函数的作用是实现动态联编,也就是在程序的运行阶段动态地选择合适的成员函数,在定义了虚函数后,可以在基类的派生类中对虚函数进行重新定义,在派生类中重新定义的函数盈余虚函数具有相同的形参个数和形参类型,当然,派生类可以不重写基类中的虚函数,而直接继承基类中的方法来实现。
【纯虚函数】:如果在基类中不能对虚函数给出有意义的实现,而是只保留了函数接口,它的实现完全留给该基类的派生类去做,这样的函数叫做纯虚函数,纯虚函数的定义与虚函数稍有不同,如下所示:
class <类名>
{
virtual <类型><函数名>(<参数表>)=0;
…
};
【虚基类】:当在多条继承路径上有一个公共的基类,在这些路径中的某几条汇合处,这个公共的基类就会产生多个实例(或多个副本),若只想保存这个基类的一个实例,可以将这个公共基类说明为虚基类。