广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 热门技术 > 正文

C++语言虚函数的规则有哪些?_惠州C++培训

作者:邓华发布时间:2020-11-23分类:热门技术浏览:1078


导读:C++语言虚函数的规则有哪些?对于常规的基类函数来说,有下列使用规则:1、尽量使用非虚拟接口模式(NVI)让接口函数成为非虚拟的。2、尽量让虚函数成为私用的。3、只有当派生类需要调用基类对某个虚函数的实现...

       C++语言虚函数的规则有哪些?对于常规的基类函数来说,有下列使用规则:


       一、尽量使用非虚拟接口模式(NVI)让接口函数成为非虚拟的。


       二、尽量让虚函数成为私用的。


       三、只有当派生类需要调用基类对某个虚函数的实现时,才把虚函数声明为保护的。


       四 、基类的析构函数应该要么为共有虚函数,要么为保护虚函数。

 

       说明:1,2两条将虚公有接口的两个职责进行了很好的分解,遵守了单一职责原理。


      第4条说明:如果要使用多态(指针调用),那么基类的析构函数一定要为虚函数;如果基类本身的设计不是处于多态考虑的话,那么就应该将析构函数设为保护类型。这样可防止出现使用指针的析构(基类无法被直接析构),只有派生类才能析构基类。


   非虚接口模式(NVI)的说明:基类对接口具有完全控制权,很方便在一个单一的、可复用的地方实施(enforce)接口的前条件。后条件、插入一些设备或做一些类似的事情。更好的是实现接口和实现分离;让基类在变化面前更稳定。条件检查可以仅在调式期有效,这更易于控制。如果非虚函数仅有唯一一行转发调用,编译器会做内联优化,没有效率问题。


       想知道更多关于C++的知识吗?联系在线客服或者来惠州北大青鸟暨华校区学习。

      

标签:惠州北大青鸟北大青鸟惠州IT培训惠州C++培训惠州C++C++C++培训


热门技术排行
标签列表
网站分类
文章归档
最近发表