1. 實現(xiàn)隱藏,只暴露接口的目的:1)防止客戶程序員插手他們不應(yīng)當接觸的部分。2)允許庫設(shè)計者去改變這個類的內(nèi)部工作方式,而不必擔心會影響客戶程序員。
我的理解:人體就是一個類實例,心臟是私有變量,手是接口。你可以來跟我握手,但是不能直接操作我的心臟。不然這個實例都會掛掉。
2. 重用:兩種方法,1)類對象作為另一個類的成員變量,優(yōu)點:靈活。2)繼承,重用接口,優(yōu)點:克隆基類,訂制新類;缺點:與基類耦合;解決方法:實現(xiàn)與接口完全分離(COM)
我的理解:你想要砍樹,你有兩種辦法:1)拿一把斧頭(其他類變量)解決你的問題。2)拜師學(xué)個降龍十八掌,對著樹發(fā)功就行了。
3. 多態(tài):不把對象當作某一特殊類型,而是看成基本類型。采用“晚綁定”。
早綁定:編譯器對特定的函數(shù)名產(chǎn)生調(diào)用,而連接器將這個調(diào)用解析為要執(zhí)行的絕對地址。
晚綁定:直到運行時才確定要被調(diào)用的代碼。實現(xiàn)原理:虛機制,C++編譯器在真正調(diào)用的地方插入一段特殊的二進制代碼。通過使用存放在對象自身中的信息(虛函數(shù)表)。這段代碼在 運行時計算為被調(diào)用函數(shù)體的地址。
我的理解:
4. 對象:創(chuàng)建和銷毀。
為了效率把數(shù)據(jù)放在棧上和靜態(tài)存儲區(qū)。靜態(tài)存儲區(qū)是一塊固定塊,程序執(zhí)行前分配。快速,但是我們必須知道對象的準確數(shù)量和其生命周期
動態(tài)創(chuàng)建對象,堆。運行時還不確定需要多少對象,生命周期與準確數(shù)據(jù)類型不確定。
5.異常處理:是一個對象,被拋出,必須被處理。
C和C++究竟有什么不同呢,100個人有100個答案。C++的效率不輸C,尤其C++在解決問題的時候更偏向于我們?nèi)粘I钪械乃季S。C的操作就是數(shù)據(jù)定義和操作,C++的操作時類型的創(chuàng)建和交互。
posted on 2012-05-28 12:11
Dino-Tech 閱讀(176)
評論(0) 編輯 收藏 引用