好的 - 这可能是一个非常愚蠢的问题,但它一直困扰着我。功能参数多态性
是否有语言,其中
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);
会产生"doing ape stuff"
? (请使用C++语法与我联系) 为了澄清,我希望“一个接受参数并根据参数类型对其进行操作的函数”。
它会有道理吗?当然,作为一名开发人员,您需要注意,因为看起来像动物指针的实例可能实际上调用了Ape代码,因为在运行时它是一个指向的Ape实例。
常见LISP ...为什么这是一个惊喜(不!);) 谢谢你的术语澄清和维基百科链接! – msi 2010-01-30 21:30:20
我会第二个共同的lisp。 – Demosthenex 2010-01-30 23:59:03
把它分类为深奥的几乎令人伤心:-p – 2010-01-31 03:01:29