派生类指针如何调用基类函数

时间:2016-08-21 03:48:48

标签: c++ pointers inheritance

我有一个基类'a',其中包含一些虚函数,在派生类'b'中我重载了该函数。现在我还有一个来自'b'的类'c'而且我有一个指向c类的指针。但是我无法弄清楚如何从'c'类指针调用该函数。帮助我,也许是愚蠢但我被困在这里。

2 个答案:

答案 0 :(得分:1)

struct A { virtual void foo() {} };
struct B: A { void foo() override {} };
struct C: B {};

auto main() -> int
{
    C o;
    C* p = &o;

    p->foo();    // Calls B::foo
    p->A::foo(); // Calls A::foo
}

答案 1 :(得分:0)

如果c是指向C的指针:

c->A::method();