-1

场景:我想在孩子中使用 Parent 方法。是否可以创建具有两个对话框类的解决方案,如下所示?

//Parent is created using class wizard(inherited from CDialog)  
class CDlgParent : public CDialog


//Child class created using class wizard(inherited from CDialog) and then  
  //changed the inheritance  
class CDlgChild : public CDlgParent
4

1 回答 1

0

只是为了举例

class A
{
private:
    void privateMethod(){}
protected:
    void protectedMethod(){}
public:
    void publicMethod(){}
};
class B : public A
{
    void methodB()
    {
        //privateMethod();
        protectedMethod();
        publicMethod();
    }
};

只需将其复制到您的代码中,您就会看到它会编译。
如果取消注释该行,它将不再编译,并给出如下错误:

无法访问在“A”类中声明的私有成员

因此,您不能从 B 使用的唯一方法是从 A 继承的私有方法,所有其他方法都可以正常使用

于 2015-11-04T11:30:40.170 回答