vc++中运用到虚函数,实现多态时,不同的派生类执行自己的虚函数,运用时应注意:
举例:
基类:CAnimal,虚函数:virtual call(){......}
派生类1:CDog,虚函数:virtual call(){"狗叫......"}
派生类2:CCat,虚函数:virtual call(){"猫叫......"}
1、基类定义的虚函数,在使用时,如果用基类定义变量,如:CAnimal *a,CAnimal *b,那么在 使用虚函数时,应使用指针,若用一般的成员运算符,是达不到派生类实现的虚函数的效果(CAnimal a;a.call()之类的)。
2、用派生类来定义变量,也可以让其实现其虚函数的功能,如:CCat cat cat.call()。