问题 单项选择题

有如下类声明:
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。

单项选择题
填空题