C++——建構函式之初始化列表
1、建構函式體賦值
建構函式體中的語句只能將其作稱為賦初值,而不能稱為初始化,因為初始化只能初始化一次,而建構函式體內可以多次賦值
2、初始化列表
初始化列表是成員變數初始化的地方,初始化列表以一個冒號開始,以逗號分隔的資料成員列表,每個“成員變數”後面跟一個放在括號中的初始值或表示式
注意:
- 每個成員變數在初始化列表中只能出現一次(初始化只能初始化一次)
- 類中包含以下成員,必須放在初始化列表位置進行初始化【引用成員變數、const成員變數、自定義型別成員(該類沒有預設建構函式)】
- 成員變數在類中宣告次序就是其在初始化列表中的初始化順序,與其在初始化列表中的先後次序無關
舉例:
變數的宣告次序為_a2,_a1,所以初始化順序為_a2(_a1),_a1(a),由於未初始化的_a1 是隨機值,所以_a2是隨機值
3、explicit關鍵字
建構函式不進可以構造和初始化物件,對於單個引數的建構函式還有型別轉換的作用
用explicit修飾建構函式,將會禁止單參建構函式的隱式型別轉換
相關文章
- 【C++】初始化列表建構函式VS普通建構函式C++函式
- C++ 類建構函式初始化列表介紹C++函式
- C++中建構函式後的初始化列表C++函式
- c++中使用建構函式初始化列表的情況C++函式
- C++ 建構函式 explicit 關鍵字 成員初始化列表C++函式
- C++建構函式初始化順序C++函式
- C++ 建構函式和解構函式C++函式
- 【C++】建構函式C++函式
- C++建構函式C++函式
- C++ 類建構函式和解構函式C++函式
- 【C++】類初探常量成員函式與建構函式初始值列表C++函式
- C++入門記-建構函式和解構函式C++函式
- [C++]顯示呼叫建構函式和解構函式C++函式
- C++/CLI思辨錄之拷貝建構函式C++函式
- C++語言之結構體、類、建構函式、拷貝建構函式C++結構體函式
- C++複製建構函式C++函式
- c++建構函式詳解C++函式
- C/C++——建構函式、複製建構函式和解構函式的執行時刻C++函式
- c# tcbs之建構函式呼叫建構函式示例C#函式
- C++中建構函式,拷貝建構函式和賦值函式的詳解C++函式賦值
- C++再議建構函式及複製建構函式深度複製C++函式
- C++建構函式解構函式的執行過程C++函式
- c++建構函式詳解薦C++函式
- 深入分析C++物件模型之移動建構函式C++物件模型函式
- C++ Daily 《3》----建構函式可否是虛擬函式C++AI函式
- 預設建構函式、引數化建構函式、複製建構函式、解構函式函式
- C++型別轉換建構函式C++型別函式
- c++ 的學習 建構函式1C++函式
- C++拷貝建構函式詳解C++函式
- C++ 拷貝建構函式詳解C++函式
- c++學習筆記 -- 建構函式C++筆記函式
- C++基礎建構函式(constructor)C++函式Struct
- 建構函式之間的呼叫函式
- C++建構函式和解構函式呼叫虛擬函式時使用靜態聯編C++函式
- C++ 類中呼叫基類帶引數建構函式以及常量如何初始化C++函式
- C/C++—— C++中建構函式不能是虛擬函式的原因分析C++函式
- 迴圈單連結串列建構函式、解構函式C++實現函式C++
- 建構函式與解構函式函式