定义基类和派生类

自闭症网瘾萝莉.ら 提交于 2019-11-27 21:53:29

成员函数与继承  

在C++语言中,基类必须将它的两种成员函数区分开来:一种是基类希望派生类进行覆盖的函数;另一类是基类希望派生类直接继承而不要改变的函数。对于前者,基类通常将其定义成虚函数(virtual)。当我们使用指针或引用调用虚函数时,该调用将被动态绑定。根据引用或指针所绑定的对象类型不同,该调用可能执行基类版本,也可能执行某个派生类版本。

  基类通过在其成员函数的声明语句之前加上关键字virtual使得该函数执行动态绑定。任何构造函数之外的非静态函数都可以是虚函数。关键字virtual只能出现在类内部的声明语句而不能用于类外部的函数定义。如果基类把一个函数声明成虚函数,则该函数在派生类中隐式也是虚函数。

  成员函数如果没有被声明为虚函数,则其解析过程发生在编译时而非运行时。

访问控制与继承

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!