c++定义类的时候 继承和定义一个变量 有什么区别?

有一个a_s类b_s类继承a_s:classb_s:a_s{}b_s里面定义了一个a_sclassb_s{a_sa;}有啥区别?不要学术粘贴的答案... 有一个a_s类
b_s类继承a_s:
class b_s:a_s
{
}
b_s里面定义了一个a_s
class b_s
{
a_s a;
}

有啥区别?不要学术粘贴的答案
展开
 我来答
yangb317
2013-02-23
知道答主
回答量:98
采纳率:100%
帮助的人:37.5万
展开全部
第一种叫继承,b_s可以直接访问a_s中的非私有成员函数和变量
第二种叫聚合,b_s不能直接访问a_s中的成员函数和变量,只能通过a变量间接访问
其它不同的地方还有很多,不是随便能说清楚的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吉祥二进制
高粉答主

2013-02-23 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84578

向TA提问 私信TA
展开全部
数据上实现共享,运算上实现多态.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b1de0ea
推荐于2016-06-28 · TA获得超过239个赞
知道小有建树答主
回答量:464
采纳率:0%
帮助的人:350万
展开全部
继承了a_s,则b_s就有了a_s类的成员,但b能不能访问a中的成员,还要看两个方面,一是成员在a中的属性,是public还是protected,或是private;二是继承方式是public还是protected,或是private。总之b中就有了a中成员的一份拷贝了,a有的成员b都有了,当让b还可以定义自己特有的成员。
b中定义了一个a_s,则b要想访问a的成员就只能通过a_s的对象了,因为b并没有继承到a的成员,只是通过a_s的对象才和a_s取得了联系。b_s里通过a_s的对象可以访问a_s的所有成员(函数和数据)
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式