有如下类定义: class B{ public: void fun1(){ } private: void fun2(){ } protected: void fun3(

admin2021-06-10  12

问题 有如下类定义:
    class B{
    public:
        void fun1(){ }
    private:
        void fun2(){ }
    protected:
        void fun3(){ }
    };
    class D : public B {
    protected:
        void fun4(){ }
    };
若obj是类D的对象,则下列语句中不违反访问控制权限的是

选项 A、obj.fun1();
B、obj.fun2();
C、obj.fun3();
D、obj.fun4();

答案A

解析 本题考查派生类对基类成员的访问属性,派生类私有继承基类,那么基类的公用成员和保护成员在派生类中成为私有成员,所以派生类可以直接使用基类的公用成员,A选项正确。
转载请注明原文地址:https://jikaoti.com/ti/X1h0FFFM
0

最新回复(0)