为了账号安全,请及时绑定邮箱和手机立即绑定

已采纳回答 / yuchuan
确实含有所有数据成员。只是A类的私有成员在B类中成为不可访问的数据成员。
恩,是的,就是这样
隐形眼镜就是眼镜!!!
在这一节里面应该是不考虑其他的继承方式所以B算正确的。
留个名。88
果然讲的和实际情况有出入,不知道跟平台有没有关系,貌似是这样的
c++对象的初始化顺序是:
(a) 基类初始化
(b) 对象成员初时化
(c) 构造函数的赋值语句
假设 class C : public A, public B {
D d;
}
则初始化的顺序是A, B, D, C的构造函数. 这里基类的初始化顺序是按照声明的顺序, 成员对象也是按照声明的顺序. 因此 c(int i, int j) : B(i), A(j) {} //这里成员初始化列表的顺序是不起作用的
析构函数的顺序则刚好是调过来, 构造/析构顺序可看作是一种栈的顺序
为什么老是这么卡,视频不能看啊,看两秒停几秒,有点烦
为什么看视频这么卡?

最赞回答 / fanfan598
基础:    任何类的protected和pravite成员都只能通过该类的成员函数访问,不同通过该类实例化的对象进行访问。public继承下:    基类中的protected成员对应到子类的protected成员,对于子类的protected成员,只能通过子类自己的成员函数访问,而不能通过子类实例化的对象访问。
用codeblockS提交过了 这个却不行
挺好的、、、、、
还是在学基础呀。。。

已采纳回答 / Nero_Leo
子类的构造函数会先调用父类的构造函数然后在执行自己构造函数里的代码
同学们,注意士兵的输出语句,fire!!!要改为fire
老师好棒!!!收获很大~

已采纳回答 / kid123
因为调用test1的时候,是调用类的默认拷贝构造函数,拷贝构造函数因为没有在类内定义,所以是系统自带的。调用test1的时候,不是调用程序员定义的默认构造函数,而是拷贝构造函数。拷贝构造函数的原型为:类名(const 类名 &变量名);

最赞回答 / angeliaandlu
不管是哪种继承方式,B类都将含有A类的所有数据成员,对于公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问;对于保护继承的特点是基类的所有公有成员和保护成员都成为派生类的保护成员,并且只能被它的派生类成员函数或友元访问,基类的私有成员仍然是私有的;对于私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这个派生类的子类所访问。
课程须知
本课程是C++初级课程 熟练掌握C++语言基础语法,如需要学习C++基础语法的可以看《C++远征之起航篇》、《C++远征之离港篇》、《C++远征之封装篇(上)》、《C++远征之封装篇(下)》
老师告诉你能学到什么?
1、什么是继承 2、基类和派生类的概念 3、继承的三种方式 4、多重继承和多继承 5、虚继承是怎么回事

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消