在c++中是否可以从父函数调用子函数。
举个例子:父类在一个函数(parse)中定义了一般的工作流程。然后工作流调用代表流的一部分的不同方法 (parseElementA)。这些函数可以被子类覆盖,如果不是标准函数,则应使用父类的一部分。
我的问题是:我创建了一个子对象并执行了工作流函数(解析)。当在工作流函数中调用覆盖函数 (parseElementA) 时,它会从父函数而不是子函数调用函数。 我该怎么做才能调用 child 中的覆盖函数。
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();
输出是父级。我该怎么做才能返回 child 。
非常感谢您的任何建议。
最佳答案
修复代码中的编译器错误后,it works fine .
关于c++ - 在父函数中调用覆盖的子函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6568778/