问题 单项选择题

若类A和类B的定义如下: class A [int i,j; public:int geti(){return i;} }; class B:public A {int k; public:void make() {k=i*j; } }; 则上述定义中非法的表达式是

A.k=i*j

B.int k;

C.retum i;

D.void make()

答案

参考答案:A

解析: 本题考核派生类的定义和访问权限。变量i和j都是基类A的私有变量,它们是隐蔽的,在派生类中不能直接访问。

综合
多项选择题