C++11的override说明符怎么使用


本篇内容主要讲解“C++11的override说明符怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++11的override说明符怎么使用”吧!多态和虚函数多态是C++的重要特征之一,同时也是初学者比较难理解的特征。先来看一个简单的例子:代码很简单,按照作者自己的话描述一下上述代码中多态从定义到起作用的要点,应该不会再简单了,从main函数看起:基类的指针指向派生类的对象派生类覆盖了基类中定义的虚函数这三点是必要条件,缺一不可。上面的代码还有另外一些有有意思的地方,虽然不影响结果,但还是了解一下为好。派生类中重新定义(覆盖)基类中虚函数时:virtual关键词不是必须不必将函数声明为public覆盖失败的情况虚函数的覆盖要求两个函数的签名必须一致。例如下面的代码:由于sub2::f1的签名和base::f1的签名不一致,所以无法实现多态。也许你会觉得这个错误太明显了,根本不会发生。那是因为本例中的成员函数太简单了。在实际的开发中随着开发规模的扩大,类的继承关系会变得越来越深,成员函数的参数也会越来越多,经常会遇到派生类中定义的成员函数的签名和覆盖对象的签名不一致的而导致覆盖失败的情况。而且要命的是,这种错误不会产生编译错误,不容易被发现。
override说明符为了解决这个问题,C++11中引入了一个方法:在声明、定义派生类中的覆盖函数时使用override说明符:
由于明确的函数的用意,所以当编译器无法在基类中找到相同签名的虚函数的时候,就会产 香港云主机生编译错误。
到此,相信大家对“C++11的override说明符怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是开发云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

相关推荐: Centos7设置docker代理的方法

这篇文章主要讲解了“Centos7设置docker代理的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Centos7设置docker代理的方法”吧!mkdir /etc/systemd/system/doc…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 08/29 17:20
下一篇 08/29 17:20

相关推荐