为了账号安全,请及时绑定邮箱和手机立即绑定
前面基础打好到这里真是行云流水一气呵成,老师讲的真精彩!
从起航一路看过来,老师讲的很好。

最新回答 / 慕姐7492654
因为这是在一个文件里面,没有分成多个文件,视频里讲的是分成了多个文件,所以造成了重定义。
或许这就是程序员吧(滑稽)
总结:1.不管哪种继承,private下的属性和方法都不能被继承。2. protected继承将基类的protected和public都继承为protected 3. private继承将基类的protected和public都继承为private

已采纳回答 / genwong
ChildLabourer *p=new ChildLabourer("Merry",100);这个括号是不是中文的?

最赞回答 / LZ谕
派生类可以通过基类的公共成员函数来访问基类的私有数据成员
老师我一直跟着你!
int main(void)
{
// 使用new关键字创建童工类对象
ChildLabourer *c = new ChildLabourer("kk",6);
// 通过童工对象调用父类的work()和play()方法
(*c).Worker::work();
c->Children::play();
//c->work();
//c->paly();
// 释放
delete c;
c = NULL;

return 0;
}
int main(void)
{

Soldier soldier;
// 向士兵属性赋值"tomato"
soldier.m_strName = "tomato";

soldier.Person::m_strName= "Jim";

cout << soldier.m_strName << endl;

cout << soldier.Person::m_strName << endl;
// 调用士兵对象方法
soldier.attack();

soldier.Person::attack();
mark,20180323日
快看完了,嘻嘻,时间:18年3月23日
学了好多,有收获

最赞回答 / Jedenn
首先确定如下事实:创建派生类对象时,程序首先调用基类构造函数,然后再调用派生类构造函数。(因此,Soldier soldier; 会先调用Person构造函数,后调用Soldier构造函数)Person p = soldier; 使用的是拷贝初始化,调用拷贝构造函数(不是构造函数),当前情况使用的是默认拷贝构造函数Person p; 属于默认初始化,调用的是Person构造函数。无论Person p = soldier; 还是 Person p; 生成的对象p,销毁时都是调用的~Person析构函数。第2...
为自己加个油!为了找工作,重拾知识点
Farmer.cpp 代码
#include <iostream>
#include <string>
#include "Farmer.h"
using namespace std;
Farmer::Farmer(string name){
m_strName = name;
cout << "Farmer()"<<endl;}
Farmer::~Farmer(){
cout << "~Farmer()"<<endl;}
void Farmer::sow(){
cout << m_strName <<endl;
cout << "Farmer() --sow()"<<endl;}
课程须知
本课程是C++初级课程 熟练掌握C++语言基础语法,如需要学习C++基础语法的可以看《C++远征之起航篇》、《C++远征之离港篇》、《C++远征之封装篇(上)》、《C++远征之封装篇(下)》
老师告诉你能学到什么?
1、什么是继承 2、基类和派生类的概念 3、继承的三种方式 4、多重继承和多继承 5、虚继承是怎么回事

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消