第19章(第1 / 5页)
推荐小说:
{
…
};
};
voidTest(A*a)
{
a->Func1();
}
很多程序员经不起“继承”的诱惑而犯下设计错误。
一只公鸡使劲地追打一只刚下了蛋的母鸡,你知道为什么吗?
因为母鸡下了鸭蛋。
本书3.3节讲过“运行正确”的程序不见得就是高质量的程序,此处就是一个例证。
6.1.3虚函数与多态
classB:publicA
{
…
};
classC:publicA
除了继承外,C++的另一个优良特性是支持多态,即允许将派生类的对象当作基类的对象使用。如果A是基类,B和C是A的派生类,多态函数Test的参数是A的指针。那么Test函数可以引用A、B、C的对象。示例程序如下:
classA
{
public:
voidFunc1(void);