C++公有继承,子类访问父类成员问题
classA{protected:intx;public:voidset(inti){x=i;}voidget(){terurnx;}};classB:publicA{i...
class A{
protected: int x;
public: void set(int i){x=i;}
void get(){terurn x;}
};
class B:public A
{int y;}
class C:protected B{......}
为什么C类对象不能用get函数访问父类数据X
谢谢 展开
protected: int x;
public: void set(int i){x=i;}
void get(){terurn x;}
};
class B:public A
{int y;}
class C:protected B{......}
为什么C类对象不能用get函数访问父类数据X
谢谢 展开
展开全部
可以在C中通过get访问父类x。只是你的示例代码有好几个语法错误。
class A{
protected:
int x;
public:
void set(int i){
x = i;
}
int get(){ // 返回值类型为int
return x;
}
};
class B: public A{
int y;
}; //要加分号
class C: protected B{
public:
void set(int x){
B::set(x);
}
int get(){
return B::get();
}
}; //要加分号
int main(){
C c;
c.set(123);
cout << c.get();
}
追问
哦,我这个是试题,但答案说不可以
追答
你确定你写在这里的题目跟试题是一样的。
你贴出的代码语法错误就很多。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询