K.K*_*K.K 1 c++ virtual-functions
即使有很多关于如何在c ++中处理虚函数的文章,我也无法清楚一个基本的疑问.派生类的vptr变量是否被基类变量覆盖.ptr varible的名字也被破坏了吗?
Class Base
{
public:
virtual void test();
};
class Derived
{
public:
virtual void test();
};
Run Code Online (Sandbox Code Playgroud)
如果我打电话
Base b = new Derived();
b->test();
Run Code Online (Sandbox Code Playgroud)
它转变为
(*b->vptr[<index>])(b);
Run Code Online (Sandbox Code Playgroud)
索引指向vtable条目.
我怀疑这个vptr是否也被命名为?