[C/C++]構造函數初始化

構造函數:

①編碼過程中倡導:函數功能儘量單一,儘量多的扇入,合理的扇出。構造函數也是一樣的,構造函數的最重要的功能,就是初始化,所有和初始化有關的,都可以放在構造函數中,比如類內部成員的初始化等。

②初始化方式:其實有三種方式初始化:

(1)在聲明成員變量的時候直接初始化,這種方式過去並不是十分的習慣,但其實是一個不錯的方式,如果一個成員的初始值是確定的,在構造函數中不用去改變的,那麼可以直接在聲明的時候就進行賦值。

(2)用初始化列表進行初始化:其實構造函數的初始化只能夠在初始化列表中進行(如果沒有顯式的放在初始化列表,實際上也執行了默認的初始化),並且初始化列表是在構造函數的函數體之前執行的,因此如果不在裏面初始化,而是在函數體初始化,實際上是浪費了性能了。另外,諸如引用類型的成員變量、const的成員變量以及一些無默認的構造函數的類對象,則必
須在初始化列表中進行初始化,否則報錯。

(3)最後初始化的地方就是構造函數體了,其實這裏不是真正的初始化,因爲到這裏,都已經初始化完畢了,這裏僅僅只是進行一些賦值操作,只不過看起來像是在初始化一樣。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章