課程
/后端開發
/C++
/C++遠征之繼承篇
如果不想要Yellow變成blue,或者是讓p->printColor();打印出來的是Yellow,還是虛繼承的話應該怎么做呢。
2016-11-07
源自:C++遠征之繼承篇 6-3
正在回答
你這樣是設置了一個名字為ary的session,且為一個array類型的,若要輸出"jobs",則要寫為:父類Car的speedUp()方法輸出結果是10,加上子類speedUp方法中的50,得出的結果就是60
MigrantWorker::MigrantWorker(string?name,?string?code,string?color):Farmer(name),Worker(code),Person(color)? { cout?<<?"MigrantWorker()"<<?endl; }
MigrantWorker::MigrantWorker(string name, string code,string color):Farmer(name,color),Worker(code, color) ?
{
m_strColor = color;
cout << "MigrantWorker()"<< endl;
}
課程中是兩個中間父類都變成了虛繼承。如果想通過子類初始化頂端父類的數據成員,可以只虛繼承一個中間父類
呃,這樣的話,父類中的值也變成 Yellow 了吧
p->m_strColor="Yellow";
肯定可以吧
4062855 提問者
舉報
繼承,C++面向對象三大特征之一,通過編碼實踐方式講解到操作層面
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2022-03-26
你這樣是設置了一個名字為ary的session,且為一個array類型的,若要輸出"jobs",則要寫為:父類Car的speedUp()方法輸出結果是10,加上子類speedUp方法中的50,得出的結果就是60
2017-05-04
2017-05-04
MigrantWorker::MigrantWorker(string name, string code,string color):Farmer(name,color),Worker(code, color) ?
{
m_strColor = color;
cout << "MigrantWorker()"<< endl;
}
2017-04-02
課程中是兩個中間父類都變成了虛繼承。如果想通過子類初始化頂端父類的數據成員,可以只虛繼承一個中間父類
2016-11-09
呃,這樣的話,父類中的值也變成 Yellow 了吧
2016-11-08
肯定可以吧