c++之virtual关键字

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

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

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

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

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

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

猜你喜欢

转载自blog.csdn.net/ypshowm/article/details/89231761