[英]how a derived class pointer can call the base class function
我有一个包含一些虚函数的基类'a',在派生类'b'中我对该函数进行了重载。 现在我又有一个仅从'b'派生的类'c'并且有一个指向类c的指针。但是我无法弄清楚如何从'c'类指针调用该函数。 帮助我,也许它很愚蠢,但是我被困在这里。
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
}
如果c
是指向C
的指针:
c->A::method();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.