若简历中提到了你对C++有所了解,那么面试官会有80%的可能性问关于多态的内容
接下来就来看一下,我总结的关于面试如何向面试官讲述关于多态的内容吧!
正文
首先你可以讲述一下多态的概念
多态,即事物表现出的多种形态
然后你可以举个栗子~
就像是一个演员,他可以演好人,也可以演坏人。
接下来,可以说一下多态的种类
多态分为静态多态和动态多态两种
静态多态(函数重载、泛型编程)
静态多态是编译器在编译期间完成的,根据实参类型调用函数,若实参类型与形参都不同,则系统会报错
关于函数重载的实现,可戳
动态多态:(虚函数)
动态多态是在程序运行时完成的
讲到这里你可以讲一下动态多态的实现条件
其需要满足两个条件:
1.基类中必须包含虚函数,并且派生类中要对基类中的该虚函数进行重写
2.通过基类对象的指针或引用来调用虚函数
关于动态多态的实现,可戳
在上面讲述动态多态的实现条件时,提到了重写的概念
重写的实现条件
1.基类中被重写的函数必须为虚函数
2.基类和派生类中虚函数的原型必须保持一致(即函数名,函数返回类型,函数参数列表完全相同)
基类中将被重写的虚函数和派生类中与其对应的虚函数的访问限定符可以不同
两个例外:
a.析构函数
b.协变:基类(派生类)虚函数返回基类(派生类)指针或引用
关于多态实现的原理,请戳
欢迎交流~
转载请注明原地址:Lucky-pxx的博客 » 点击阅读原文,谢谢!