已采納回答 / 男人海洋liu
soldier ?protected ?person ? ,infantry ?public soldier ?也就是說 m-strname 是在類infantry的protected下,首先你要明白什么是內部訪問跟對象訪問的概念,attack是派生類infantry的成員函數.attack函數當然可以打印出自己protected的成員了,不知道你有沒有明白,你不明白的話,把視頻反復看,最好把代碼寫下來了,理清思路。最重要的是你要理解內部訪問跟對象訪問的概念
2016-03-17
已采納回答 / 隨風lief
虛擬繼承是多重繼承中特有的概念,是為解決多重繼承的。用虛繼承可以節省內存空間虛函數是面向對象多態性的主要方式,通過繼承基類中的虛函數在子類中重載實現不同操做。繼承的虛函數在子類中不需要加virtual,默認就是虛函數。可以被它的子類覆蓋。
2016-02-02
已采納回答 / fulllion
是沒有調用構造函數吧?不是析構函數。你寫過一個類的構造函數后,你就需要按你寫的構造函數傳遞參數。如果你不寫,系統生成的默認構造函數是沒有參數的,所以不用傳遞參數。如果你真的不想傳遞參數,不妨可以再寫一個構造函數,進行重載就可以啦。
2015-12-25
已采納回答 / DoDream
子類擁有父類的所有(除私有的)成員,很多教程都忽略了這個字眼,你要自己發現。C++技術網http://www.cjjjs.cn/,網站的零基礎入門教程,可以帶你從小白練就大神,文章深入淺出,通俗易懂,分析透徹,即使學過,也會大有收獲,是學習必備網站哦。
2015-10-20
已采納回答 / onemoo
會的。b._a 取的是 b 中的那個 _a而 B 繼承了 A 的 print 函數,這個函數定義在 A 中,函數取的是 A 中的_a,所以 b.print() 還是會輸出 1
2015-10-15