建構函式中的成員初始化清單
在 C 中,建構函式可以使用成員初始化清單來初始化資料成員。此清單出現在建構函式名稱之後,以冒號 (:) 分隔。
繼承與成員初始化清單
成員初始化清單也可用於呼叫基底類別建構子。在提供的程式碼中:
class demo { public: demo(unsigned char le = 5, unsigned char default) : len(le) { ... } }; class newdemo : public demo { public: newdemo(void) : demo(0, 0) { ... } };
newdemo 建構函數中的 demo(0, 0) 使用參數 0 和 0 呼叫其基底類別 demo 的建構函數,初始化 len 成員。
成員初始化列表的一般用法
在繼承之外,成員初始化列表允許for:
在構造函數體之前初始化資料成員:
非const 的成員可以在建構函式體執行之前在初始化清單中初始化。這確保了無論建構函數的流程如何,該成員都會被初始化。
常數資料成員的初始化:
常數資料成員只能在其宣告中或使用成員初始化清單。
範例:
class MyClass { public: MyClass(int value) : value(value) // Initialize const member in initialization list { ... } private: const int value; };
以上是成員初始化列表在 C 構造函數和繼承中如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!