看板 TTSH12th309 關於我們 聯絡資訊
OOP重於軟體設計 1.縮短軟體的生產過程 2.降低軟體跟新功能時的阻力、縮短修改的流程 3.減少不要的錯誤 A 封裝(Encapsulation) 確保實做介面的功能,降低軟體的成本 B 繼承(Inheritance) 重於軟體的架構 (程式碼與介面) ex.請問使用 C++ 語言時,在類別層次如何實作物件導向程式設計的 “封裝 (Encapsulation)” 特性? sol.第一是製作介面函式,所有的資料在使用時都透過這一組介面函式,常常這一組 介面函式是以服務為導向的 第二是強制將資料放在 private 區段中,將介面函式放在 public 區段中,如此 編譯器可以協助檢查出不透過介面函式的資料存取 C 多型(Polymorphism) 基於抽象介面撰寫程式,使用不同實體物件的機制 ------------------------------------------------------------------------------ ex.請問在撰寫程式時程式設計者在心裡面常常對資料內容有一些假設(例如: 指標內容不為 0, 經過 selectionSort 以後的序列應該是按照順序排列的), 我們在程式裡應該 運用什麼敘述把這些假設寫出來? (請舉一個簡單的例子) sol.通常可以用 assert 敘述來將心裡面假設的事情明白地寫在程式裡,也可以用 assert 敘述將單元測試寫進程式裡,你寫一段程式一定會假設你的程式正確執行 ,這個假設其實和你使用的資料,測試的情境有關係,嘗試在各種情形下預測自己 程式的表現,然後用 assert敘述寫進程式裡 ex.請問將每一個類別的宣告和定義都分開來存放在 .h 和 .cpp 的檔案中有什麼好處? sol..h 檔案放類別的宣告 (介面),.cpp 檔案中放類別的定義 (實作) ,不同類別的 程式分開來存放的目的是容易管理和修改,修改後也可以節省重新編譯的時間 .h 和 .cpp 檔案分開的目的是: 只有 .h 檔案的內容是給其它模組引入的,.cpp 檔案的內容則不是,所以必須分 開不同的檔案來存放 --          ▄▄▄▄                   ▄▄▄▄▄▄▄▄▄▄          ▄▄ ▄▄          ▌███▌          █▄▄▄▄▄█▄ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.81.45
andy30927:借我紀錄一下..唸完書在砍掉 04/14 22:04
Shouian:囧 辛苦了... 話說潛水艇好複雜好靠杯= = 04/14 23:14
jackex:我們這禮拜期中考週但是沒考試~~~連2天實驗課也放假= =! 04/15 00:21
jackex:你們加油吧XDDDDD 04/15 00:22
BlueFuture:好悠哉的老奸! 04/15 01:26
timfanda35:好WOW的老奸! 04/15 01:27
jackex:-.- 04/15 01:28
jackex:這禮拜大家出去玩呀A_A 04/15 01:28
BlueFuture:你開玩笑的吧…我下禮拜才開始要考 一一! 04/15 01:35
jackex:不管呀~出去玩! 04/15 01:36
BlueFuture:那我知道了~老奸幫我考試! 04/15 01:41
jackex:-.- 04/15 01:46