在C++中,如果我想使用多态性,我将创建一个父类,然后从父类派生出许多子类,然后我将能够将子类对象的地址分配给父类的指针变量。例如:假设我有一个名为Animal的父类,然后从Animal派生出两个子类,即Dog和Cat,这三个类都有一个名为speak()的方法。现在,我可以创建一个以Animal*为参数的函数:{}Cat *cat = new Cat();
Dog *
以下是布鲁斯·埃克尔的“Thinking in C++”第一卷(第716页,para2)中的几句话:
“多态是一种不能孤立地看待的特性(例如,像const或switch语句),而只能作为类关系的”大图景“的一部分协同工作。人们经常被C++的其他非面向对象的特性所迷惑,比如重载和默认参数,它们有时被表示为面向对象。不要上当受骗;如果它不是后期绑定,它就不是多态。”我不能清楚地理解这一点,.Does他的意思是没有像编译时