1)C++入门级小知识,分享给将要学习或者正在学习C++开发的同学。
2)内容属于原创,若转载,请说明出处。
3)提供相关问题有偿答疑和支持。
c++中的多态的概念:
通过一个指向子类的基类指针或者是指针的引用去调用一个基类中的被申明为虚函数的函数,会调用到子类中覆盖类型的函数,就称之为多态;
看一下覆盖的概念:
一般形成覆盖的要素是:函数名相同,参数列表相同(包含返回值),常属性一样那么形成覆盖的条件如下:
另外在多态中有一个关键字override
如果不使用override关键字,子类中可以不实现覆盖版本的虚函数,程序不会出现问题,只是无法形成多态:输出:A:fun
如果override申明在子类中的那么基类中必须要有与子类中此函数形成多态,否则编译就会报错;
另外,一个类中如果存在使用virtual申明的函数称为虚函数,当函数末尾使用=0结束的称为纯虚函数:
多重继承的多态实例:常见的代理使用方式:mixer_delegate_是基类指针指向子类的this即子类对象,形成多态:
关于多态和静态成员函数的经典用例:多个类之间互相访问