虚函数总结: 虚函数只能是类成员函数,它在基类体内部说明,目的是提供一种接口界面; 虚函数不能是友元函数(即非成员函数),也不能是静态成员函数,因为虚函数调用要靠特定的对象来决定该激活哪个函数。虚函数可以在另一个类中被声明为友元函数; 一旦一个函数定义为虚函数,那么无论它传下多少层,都将保持为虚函数,而不必每次都加关键字virtual; 基类的虚函数可在一个或多个派生类中被重