单选题 若类A和类B的定义如下: #include class A { int i,j; public: int geti() {return i;} }; class B:public A { intk: public: void make() {k=i*j;} }; 则上述定义中非法的表达式是( )。
【正确答案】 A
【答案解析】解析:因为派生类不能访问基类的私有成员i和j(默认情况下,成员的属性为私有),所以表达式k=i*j是非法的。其余的访问权限都是许可的。