是否有可能在C ++从父函数调用子函数。
让我们举个例子:父类定义的功能(分析)的一般工作流程。 然后工作流调用其表示流(parseElementA)的一部分不同的方法。 这些功能可以通过子类覆盖,如果不是非标准功能,这是母公司的部分应使用。
我的问题是:我创建了一个子对象和执行工作流功能(解析)。 当覆盖功能(parseElementA)的工作流程功能中调用它调用从父,而不是从孩子的功能。 我能做什么,因此调用子覆盖功能。
class Parent {
public:
void parse() { parseElementA(); }
virtual void parseElementA() { printf("parent\n"); }
};
class Child : public Parent {
public:
void parseElementA() { printf("child\n"); }
};
Child child;
child.parse();
输出是父。 我能做些什么,它返回的孩子。
非常感谢您的任何意见。