msi*_*msi 11 c++ oop polymorphism language-design
好的 - 这可能是一个非常愚蠢的问题,但它一直困扰着我.
有语言吗?
class Animal;
class Ape : public Animal
{...}
void doStuff(Animal* animalPtr)
{
cout << "doing animal stuff" << endl;
}
void doStuff(Ape* apePtr)
{
cout << "doing ape stuff" << endl;
}
Animal *ape = new Ape();
doStuff(ape);
Run Code Online (Sandbox Code Playgroud)
会屈服"doing ape stuff"吗?(请使用C++语法来支持我)为了澄清,我想要"一个接受参数的函数,并根据参数的类型对其进行操作".
它会有意义吗?当然,作为开发人员,您需要注意,因为看起来像Animal指针的实例实际上可能会调用Ape代码,因为在运行时它是指向的Ape实例.