2016 - 2024

感恩一路有你

虚基类的关键字 怎样理解c 中的虚基类和虚函数.纯虚函数?

浏览量:2476 时间:2021-03-16 09:14:49 作者:admin

怎样理解c 中的虚基类和虚函数.纯虚函数?

虚拟函数和纯虚拟函数有以下区别。(1) 如果在类中声明了虚函数,则即使该函数为空,也会实现该函数。它的目的是使函数能够包含在其子类中。这样,编译器就可以使用后期绑定来实现多态性。纯虚函数只是一个接口,一个函数的声明,需要在子类中实现。(2) 虚拟函数不能在子类中重载,但是纯虚拟函数必须在子类中实现,就像Java接口一样。一般来说,在许多函数中添加虚拟元素是一个好习惯。虽然牺牲了一些性能,但是面向对象的多态性增加了,因为很难预测父类中的函数不在子类中,并且它的实现不会被修改。(3) 虚函数类用于“实现继承”,不仅继承接口,而且继承父类的实现。当然,你也可以完成你自己的实现。纯虚函数注重接口的统一性,通过子类实现。(4) 具有纯虚函数的类称为虚基类。这种基类不能直接生成对象。只有继承并重写虚拟函数后才能使用。这样的类也称为抽象类。

什么叫做虚基类?

派生类继承基类时,增加一个virtual关键字就是虚拟基类继承,如:class-derived:virtual-public-base{}虚拟基类主要解决基类在多次继承中可能被多次继承的问题,虚拟基类主要提供一个基类来继承派生类,如:类B{}类D1:public B{}类D2:public B{}类C:public D1、public D2{},其中C继承自D1和D2,但有两个基类,造成混淆。所以我们使用虚拟基类,即:类B{}类D1:虚拟公共B{}类D2:虚拟公共B{}类C:公共D1,公共D2{}

虚基类的关键字 虚基类调用 虚基类怎么定义

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。