假设我有一个基类 B
:
struct B {
virtual void f();
};
以及从 B
派生的类,名为 D
:
struct D : B {
void f() override;
};
无论如何可以从 B::f
内调用 D::f
吗?
void D::f() {
call B's implementation of f // <-- ???
do other stuff
}
答案 0 :(得分:0)
感谢songyuanyao:
#include <iostream>
struct B {
virtual void f() { std::cout << "A" << std::endl; }
};
struct D : B {
void f() override {
B::f();
std::cout << "B" << std::endl;
}
};
int main() {
D d;
d.f();
}
打印:
A
B