单选题
有如下类定义: c1ass MyBase{ int k; public: MyBase(int n=0):k(n){} int value()const{ retum k;} }; c1ass MyDerived: MyBase{ intj; public: MyDerived(int i):j(i){} int getK()const{ return k;} int geU()const{ retumj;} }; 编译时发现有一处语法错误,对这个错误最准确的描述是( )。
【正确答案】
A
【答案解析】解析:此题考查的是派生类对基类成员的访问。因为类中缺省的访问权限是私有,所以本题中MyBase类中定义的成员k是私有成员。派生类中的成员只能访问基类中的公有成员和保护成员,不能访问基类中的私有成员。所以派生类中函数getK()中的语句return k;是非法的。