C++里,多态和继承有什么关系?请举例说明How is polymorphism related to inheritance?Give an example please.

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 21:44:49
C++里,多态和继承有什么关系?请举例说明How is polymorphism related to inheritance?Give an example please.

C++里,多态和继承有什么关系?请举例说明How is polymorphism related to inheritance?Give an example please.
C++里,多态和继承有什么关系?请举例说明
How is polymorphism related to inheritance?Give an example please.

C++里,多态和继承有什么关系?请举例说明How is polymorphism related to inheritance?Give an example please.
有了继承,指向基类类型的指针或引用就可以被用来指向派生类类型的对象.然后就可以编写程序来操纵这些指针或引用而不用考虑它们所指向的对象的实际类型.
用一个基类指针或引用来操纵多个派生类型的能力被称为多态性.
在C++中,多态性分为两种,一种称为编译时多态,另一种为运行时多态
分别解释下:
1.编译时多态,也就是函数重载,所谓函数重载是指同一个函数名可以对应着多个函数的实现,具体调用哪个按照由参数个数,参数类型等来决定,这个简单,就不说了
2.运行时多态,就是虚函数.在定义了虚函数后,可以在基类的派生类中对虚函数重新定义,以实现你所想要的功能.
比如:
class A {
public:virtual void test() {...}
void display(){...}
};
class B :public A {
public:virtual void test() {...}
void display(A& a){ a.display(); }
};
那么
A* a = new A();
a->test();调用的是基类的
A* b = new B();
b->test();调用的是派生类的.
如果在A中不申明virtual,
那么
A* b = new B();
b->test(); 会调用基类的

C++里,多态和继承有什么关系?请举例说明How is polymorphism related to inheritance?Give an example please. 举例说明人的毛发和鼻子与地理环境有什么关系 maybe和perhaps有什么区别?请说得详细一些,最好举例. 它们之间有什么联系?请举例浅白说一下! 1、英语里什么叫介词、宾语和关系代词请举例!谢谢!2、清明作者:杜牧清明时节雨纷纷,路上行人欲断魂.借问酒家何处有?牧童遥指杏花村. 请帮我翻译这首诗. 举例论证和论据有什么必然的关系吗? 赫兹(HZ)是怎么算出来的?跟频率 和周期有什么关系.举例说下谢谢 who,which,that,whose和whom的用法这几个关系代词用法有什么区别?请举例! 细胞膜的流动性和物质的跨膜运输有什么关系?能的话,请大侠们举例. 继承和秉承有什么区别 “秉承”和“继承”有什么不同? 经济和文化的关系,请举例 求两组近义词的区别继承----秉承果敢----果断希望给出详细的解答呵呵 请不要直接复制百度百科的解释 最好有造句举例解释 只解释 秉承和继承 谢 关系表达式和逻辑表达式一样吗请举例说下 计量里longitudinal数据和横截面数据有什么区别?longitudinal数据和横截面数据有什么区别?请举例详细说下 什么叫代词,英语里有哪些代词?哪些人称代词?我,我们,哪些物主代词?我的,我们的,请用英语说,请举例? had been和have been有什么区别?请举例 everyday和every day有什么区别?请举例