虚函数在派生类中声明为非虚函数 [英] virtual function declared non-virtual in a derived class

查看:132
本文介绍了虚函数在派生类中声明为非虚函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果一个函数在派生类中声明为非虚函数,当基类的函数是virutal,为什么它调用一个vtable查找调用函数的指针?

If a function is declared non-virtual in a derived class when the base class function was virutal, why does it invoke a vtable lookup on calling the function on its pointer? The function is clear from the scope.

推荐答案

在C ++中,如果你声明一个方法 virtual 在基类中,那么它的虚拟也在派生类中,即使 virtual 关键字被省略。

In C++ if you declare a method virtual in the base class then it's virtual also in derived class, even if the virtual keyword is omitted.

为了文档的目的,但在我看来很好,无论如何重复。

For documentation purposes is however in my opinion nice to repeat it anyway.

这篇关于虚函数在派生类中声明为非虚函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆