虚函数和动态绑定
我们接着上一篇的例子来说(C++泛型程序设计和多态)。
虚函数能够使系统能够在运行时基于对象的类型动态决定调用的函数。也就是说,普通函数displayGeometricObject(const GeometricObject g)只能调用GeometricObject类的函数,因为在运行前已经动态编译好了。但是虚函数是在运行时动态决定的,所以可以实现根据实际类型而调用函数。
虚函数的语法:在函数前加关键字virtual 即可。
如toString()函数
virtual string toString() const;
(只需要改GeometricObject.h文件的toString函数即可,因为Circle类和Rectangle类都继承自GeometricObject类)
重新运行之前的程序:
原文链接: https://www.cnblogs.com/bwjblogs/p/12781239.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/344908
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!