私は親クラスを持っていますParent
:
class Parent
{
public:
virtual void foo(){ printf("parent foo"); };
virtual void do_something();
}
そして 2 人の子供Child1
:
class Child1 : public Parent
{
public:
virtual void foo(){ printf("child foo"); };
}
とChild2
:
class Child2 : public Parent
{
public:
void bar();
}
ご覧のとおり、メソッドをChild1
オーバーライドしますが、オーバーライドしないでください。foo()
Child2
したがって、次のようにチェックインする方法があるかどうかを知りたいですParent::do_something()
。
Parent::do_something(){
if (this->do_override_the_foo_method(){ // which is I want to implement
printf("override foo");
} else {
print("not override foo");
}
}