qwqzyq
一条C鱼
2020-05-24 12:27
采纳率: 66.7%
浏览 252

为什么派生类可以访问基类的保护成员而派生类对象却不可以呢?

派生类对基类的访问和派生类对象对基类的访问有什么区别
三十字三十字三十字三十字三十

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • caozhy
    已采纳

    因为封装性,对象也可以访问,但是必须是在类或者友元函数函数内。
    这么做的好处就是,避免一个类暴露过多的内容给调用者,造成耦合。

    class A
    {
    protected:
    int xxx;
    public:
    void foo1()
    {
    A a;
    a.xxx; //这个可以
    }
    };
    void foo2()
    {
    A a;
    a.xxx; //这个不可以
    }

    点赞 1 评论

相关推荐