D 解析:本题考核虚函数的定义。虚函数是非静态的成员函数。它不能是友元函数,但可以在另一个类中被声明为友元函数。虚函数声明只能出现在类定义的函数原型声明中,而不能在成员函数的函数体实现的地方。派生类的虚函数与基类中对应的虚函数必须满足下列条件,否则派生类中的虚函数将丢失其虚函数特性,在调用时进行静态联编:①派生类中的虚函数与基类中的虚函数具有相同的名称。②派生类中的虚函数与基类中的虚函数具有相同的参数个数和相同的对应参数类型。③派生类中的虚函数与基类中的虚函数的返回值,或者相同,或者都返回指针或引用。并且派生类中虚函数所返回的指针或引用的基类型,是基类型中的虚函数所返回的指针或引用的基类型的子类型。