有如下类声明: class MyBASE { int k; public: void set(int n){k=n;} int get()const{return k;} }; class MyDERI

admin2010-06-06  39

问题 有如下类声明:    class MyBASE    {     int k;    public:     void set(int n){k=n;}     int get()const{return k;}    };    class MyDERIVED:protected MyBASE    {    protected:      int j;    public:      void set(int m, int n) {MyBASE::set(m);j=n;}      int get()const{return MyBASE::get()+j;}    };    则类MyDERIVED中保护的数据成员和成员函数的个数是

选项 A、4
B、3
C、2
D、1

答案B

解析 本题考核派生与继承中关于访问权限的继承。类MyDERIVED保护继承类MyBASE,那么类MySASE中的共有成员在派生类MyDERIVED中表现为保护权限,所以加上派生MyDERIVED后来定义的一个保护数据成员j,类MyDERIVED中保护的数据成员和成员函数的个数是3。
转载请注明原文地址:https://kaotiyun.com/show/QSjp777K
0

最新回复(0)