社区
C++ 语言
帖子详情
类继承问题
Cform
2003-09-29 10:45:28
Class X
{protected:
int a;
}
Class Y
{public:
void set(X x,int c)
{x.a=c;}
}
看到书的问题答案还是有些不明白说是x.a不能用???
可否请用例子明示?
谢谢
...全文
38
9
打赏
收藏
类继承问题
Class X {protected: int a; } Class Y {public: void set(X x,int c) {x.a=c;} } 看到书的问题答案还是有些不明白说是x.a不能用??? 可否请用例子明示? 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aflyinghorse
2003-09-29
打赏
举报
回复
这样是可以的
class Y: public X
{public:
void set (int c)
{a=c;}
}
;
ssbull
2003-09-29
打赏
举报
回复
楼上几位说得对,你的X和Y之间没有继承关系。
如果class Y:public X {
public:
void set(X x,int c)
{x.a=c;}
};
就算这样,x.a=c也不对,因为自类不能直接用另一个几类对象的private成员,你应该在class X中定一个函数seta(),在class Y中,int set(X x,int c)改成:{x.seta()=a}
Cform
2003-09-29
打赏
举报
回复
代码写错了请见谅,
Class X{protected: int a;};
Class Y: public X
{public:
void set (X x, int c)
{x.a=c;}
}
;
ninesong
2003-09-29
打赏
举报
回复
因为Y没有从X上继承所以X,Y不存在父子关系。
你的
Y y
y.set(X … ,int …)可以在X中使用,因为它是public:
而
X x
x.a=c
不可以因为X中的a是protected。
lth_81
2003-09-29
打赏
举报
回复
。。。。。。。。。
protect只有在本身和继承的子类中才会暴露出来。因此,你传入X的对象x,并且用x.a是完全错误的。
^_^
csdn5211
2003-09-29
打赏
举报
回复
请楼主把代码写全
Jinhao
2003-09-29
打赏
举报
回复
首先,你的Y比不是继承于X,如果要继承于X 要写成这样
class Y:protected X
{public:
void set(X x,int c)
{x.a=c;}
}
sevecol
2003-09-29
打赏
举报
回复
你的X.a是protected.也就是说只有在X的派生类中才能是看的见的
而你的Y和X没有关系,所以在这里是不能访问的
andyforever
2003-09-29
打赏
举报
回复
是一个访问控制的问题
一共有三种
public对所有对象可见
protected仅对其派生类可见
private仅对其本身可见
另外可以申明友元,打破访问控制
在以上说明范围外的地方使用一个类的成员就是错误的
原因就是没有访问权限
微服务系列第九季-Java中的封装、抽象
类
、接口和多态
微服务应用是分布式开发的... 第九季主要是给大家介绍一下:Java中封装的概念及步骤、Java封装
类
、Java抽象
类
的概念、
继承
抽象
类
、抽象方法、接口的概念、接口的声明与实现、接口的
继承
、多态的概念、多态的应用举例。
python
类
的
继承
三、
类
继承
的事例 回到顶部 一、概述 面向对象编程 (OOP) 语言的一个主要功能就是“
继承
”。
继承
是指这样一种能力:它可以使用现有
类
的所有功能,并在无需重新编写原来的
类
的情况下对这些功能进行扩展。 ...
Enum
类
继承
问题
1、枚举
类
介绍 如果一个
类
的实例是有限且确定的,那么可以使用枚举
类
。比如:季节
类
,只有春夏秋冬四个实例。 枚举
类
使用enum进行创建,其实例必须从”第一行“开始显示写出。 enum Season{ SPRING,SUMMER,FALL...
内部
类
的
继承
问题
成员内部
类
可以
继承
其他的
类
,也可以被其它
类
继承
,本文主要说明其它
类
继承
成员内部
类
的
问题
。 本文要点如下: 1).成员内部
类
的子
类
可以是内部
类
,也可以不是内部
类
; 2).当成员内部
类
的子
类
不是内部
类
或子
类
...
C++中 public和private派生
类
继承
问题
和访问权限
问题
当一个子
类
从父
类
继承
时,...(1)父
类
的public成员成为子
类
的public成员,允许
类
以外的代码访问这些成员; (2)父
类
的private成员仍旧是父
类
的private成员,子
类
成员不可以访问这些成员; (3)父
类
的protected成员成为子
C++ 语言
64,642
社区成员
250,606
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章