我搞不清楚了。我有一堂课Editor和一堂课Controller。类WorkflowEditor和WorkflowController派生自Editor和Controller分别。类Controller有一个受保护的成员Editor editor,而类WorkflowController有一个私有成员WorkflowEditor editor(同名)。
从 EitanT 编辑:
这是一个简化的代码,用于说明 OP 所描述的内容:
class Controller
{
Editor editor;
// ...
}
class WorkflowEditor : public Editor {
// ...
};
class WorkflowController : public Controller {
WorkflowEditor editor;
// ...
};
我的应用程序是一个带有图形界面的模块。在工作流模式下,Launch 上会出现一个功能区,并显示一个向导。单击一个按钮时,将Controller调用类中的一个方法。执行崩溃是因为此时,Editor editor具有类型的对象的类成员Controller已死。我希望班级成员Editor editor与班级成员WorkflowEditor editor相同(同名)。
换句话说,如果一个类A有一个类的成员B并且类childA(派生自A)有一个类的成员childB(派生自B),并且类型的成员childB具有B相同的名称,那么该成员不是“继承”的吗?