单选题 有如下类声明:
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
【正确答案】 C
【答案解析】[解析] 由于是保护继承,基类的公有成员变成保护成员,set(int n)变成保护成员函数,而 get()const 被重载,为公有成员,j为新定义的保护成员,所以数据成员和成员函数的个数是C。