11:知識點1:構(gòu)造函數(shù)—特殊的成員函數(shù),用來控制對象的初始化過程。無返回類型,可重載,不能被聲明為const.
知識點2:若無,則有默認的構(gòu)造函數(shù),是編譯器自己隱式的定義的。又稱合成的默認構(gòu)造函數(shù)。
知識點3:某些類是不能使用默認的構(gòu)造函數(shù)的,以下三個原因:
1:在未聲明任何構(gòu)造函數(shù)的前提下,類內(nèi)對象的初始化將不受控制
2:合成的默認構(gòu)造函數(shù)可能會造成不必要的錯誤,如若沒有類內(nèi)初始值來初始化成員,可能這些成員將是未定義的。
3:如果類中包含了一個其他類類型的成員,且這個成員的類型沒有默認構(gòu)造函數(shù),那么編譯器將無法初始化該對象。
所以,在撰寫類的時候,最好定義一個自己的構(gòu)造函數(shù)。
12:知識點:內(nèi)部外部定義構(gòu)造函數(shù)是不影響的
將其移至內(nèi)部即可
13:實例化對象時修改一下即可
14:仍然可以使用列表初始化的方法,直接將數(shù)值賦給成員。
Sales_data() : units_sold(0) , revenue(0){};15:見本章第四題答案。16:知識點1:需要控制的類的相關(guān)操作—類成員的初始化、拷貝、賦值、銷毀對象
知識點2:PRivate隱藏類的相關(guān)實現(xiàn)細節(jié),實現(xiàn)封裝。
訪問說明符的作用域是開始知道下一個訪問說明符或者類結(jié)束。不想被使用該類的程序看到的代碼細節(jié),都要private.
17:見本章第一題講解。
18:封裝實現(xiàn)了類的接口和實現(xiàn)的分離,隱藏了類的實現(xiàn)細節(jié),用戶只能接觸到類的接口。
優(yōu)點:
隱藏類的實現(xiàn)細節(jié);讓使用者只能通過程序規(guī)定的方法來訪問數(shù)據(jù);可以方便的加入存取控制語句,限制不合理操作;
類自身的安全性提升,只能被訪問不能被修改;
類的細節(jié)可以隨時改變,不需要修改用戶級別的代碼;
19:相關(guān)的信息變量為private
訪問這些變量的函數(shù)為public
就是判斷你的信息是否需要隱藏起來!
20:知識點1:友元—類允許其他類或者函數(shù)訪問其非共有成員,只要在本類內(nèi),加一條類前或者函數(shù)前有friend關(guān)鍵字(最前方)的聲明即可。最好在類的開始或結(jié)尾集中聲明友元。
優(yōu)點:可以靈活地實現(xiàn)需要訪問若干類的私有或受保護成員才能完成的任務(wù),便于與其他不支持類的語言進行混合編程;通過使用友元函數(shù)重載可以更自然第使用C++語言的I/O流庫。 缺點:一個類將對非公有成員的訪問權(quán)授予其他的函數(shù)或類,會破壞該類的封裝性,降低該類的可靠性和可維護性。
新聞熱點
疑難解答
圖片精選