class Foo
{
public:
void action();
};
class Bar : public Foo
{
public:
void action();
};
void Foo::action ()
{
cout << "parent\n";
};
void Bar::action ()
{
cout << "child\n";
};
int main()
{
Foo* foo = new Bar ();
foo->action(); // returns "parent" - "child" expected
return 1;
}
对于一个可能微不足道的问题,我很抱歉,但我是 C++ 新手...'foo' 指针必须指向 Foo 类的一个实例,因为它可以是 Foo 的任何子类,例如 Bar、Bar1、Bar2、Bar3等等
同时 'foo->action()' 应该运行一个被覆盖的子函数。请告诉我,我如何更正代码以达到我的目标......谢谢!