c 類設計思考

2021-06-29 12:22:22 字數 520 閱讀 8591

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 類設計思考(總則) 我有乙個夢想

我常常在想,為什麼我看別人的 是如此的彆扭?為什麼我看昨天自己寫的 也是如此醜陋?為什麼我又忍不住要重寫同樣功能的類呢?難道我是程式設計師中的孔乙己,一輩子就折騰字串類的四種寫法?我苦苦思索,於是就有了乙個夢想 如果有一天,同樣功能的類,不同的程式設計師,或者同一程式設計師在不同的時期,寫出來的 基...