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