c++之virtual关键字

本文深入探讨了C++中虚函数的概念,解释了基类如何通过关键字virtual声明虚函数以实现动态绑定,以及派生类如何继承和覆盖这些函数。同时,文章区分了基类希望派生类覆盖的函数与直接继承的函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在c++中,基类必须将它的两种成员函数区分开来,

(1)一种是基类希望其派生类进行覆盖(override)的函数。这种函数,基类通常将其定义为虚函数(加virtual)。当我们使用基类的指针或者引用调用虚函数时,该调用将被动态绑定。

(2)另外一种是基类希望派生类直接继承而不需要改变的函数。

 

 

基类通过在其成员函数的声明语句之前加关键字virtual使得该函数执行动态绑定。

任何构造函数之外的非静态函数都可以是虚函数。

关键字virtual只能出现在类内部的声明语句之前而不能用于类外部的函数定义。如果基类把一个函数声明为虚函数,则该函数在派生类中隐式的也是虚函数。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值