1、是否需要建構函式
2、資料成員函式是否需要是私有,對外隱藏
3、是否需要乙個無參建構函式 class point; point going[10];
4、建構函式是否需要初始化所有成員
5、需要析構函式嗎 成員是new的物件時
6、需要乙個虛析夠函式嗎。乙個父類指標指向乙個子類物件,delete該指標時,需要對父類定義乙個虛析構函式
7、是否需要複製建構函式和定義賦值操作符 建構函式中分配了資源
8、賦值操作符能否正確賦值物件嗎 會有多個指標指向同一物件嗎 判斷是否是同一物件互相賦值後再delete舊物件,後再複製新物件;或者暫存乙份舊物件
9、需要定義關係運算子不
10、刪除陣列 delete 需要顯示告訴長度(會讓系統檢視陣列的長度)
11、複製建構函式和賦值操作賦引數加const
12、引數為引用型別,是否應該加const 多個運算元連續操作
13、成員函式是否需要加const,入參為const物件,只能呼叫const成員
C 類設計思考(三) 類方法與實現函式
實現函式是指單獨完成某種具體任務的函式,如向量的點積 差積,矩陣的行列式計算等。實現函式必須遵守以下原則 1 單一職責原則 函式只能擁有一種功能,不能包含多個功能,但可呼叫其它實現函式完成特定任務。常見的一種錯誤例項是對容器物件進行統計的實現,其 既包含了對容器子物件的遍歷,又包含對單個子物件的統計...
C 類設計思考(二) 值語義與引用語義
類設計前首先需要確定的是,該類所例項化的物件是值語義還是引用語義。值語義 一般用於非獨占性資源物件,表示該物件可以像int 一樣的工作,可以任意的拷貝和重新賦值,而不會引起資源洩漏或者切割 指部分資源釋放而部分洩漏 引用語義一般用於獨占性資源封裝 物件,表示該物件不允許拷貝和重新賦值。從語法的角度上...
C 類設計思考(總則) 我有乙個夢想
我常常在想,為什麼我看別人的 是如此的彆扭?為什麼我看昨天自己寫的 也是如此醜陋?為什麼我又忍不住要重寫同樣功能的類呢?難道我是程式設計師中的孔乙己,一輩子就折騰字串類的四種寫法?我苦苦思索,於是就有了乙個夢想 如果有一天,同樣功能的類,不同的程式設計師,或者同一程式設計師在不同的時期,寫出來的 基...