理解建構函式中的冒號語法
在 C 中,建構子是在建立時初始化物件的函數。雖然建構函數名稱通常與類別名稱匹配,但它們可以具有獨特的初始化語法。建構函數語法的一個值得注意的方面是使用冒號 (:) 後跟參數列表。
此語法稱為成員初始值設定項列表,有兩個主要用途:
例如,考慮以下程式碼:
class demo { private: unsigned char len, *dat; public: demo(unsigned char le = 5, unsigned char default) : len(le) { dat = new char[len]; for (int i = 0; i <= le; i++) dat[i] = default; } void ~demo(void) { delete [] *dat; } };
在此範例中,建構子有兩個參數,le 和default。成員初始值設定項清單 : len(le) 將 le 的值指派給 len 資料成員。
此外,在衍生類別newdemo 中:
class newdemo : public demo { private: int *dat1; public: newdemo(void) : demo(0, 0) { *dat1 = 0; return 0; } };
成員初始值設定項列表: demo( 0, 0) 使用參數0 和0 呼叫基底類別建構子demo,初始化基類的len和預設資料成員class.
成員初始值設定項清單是初始化資料成員和呼叫基底類別建構子的便利高效方法,可增強程式碼的安全性和清晰度。
以上是C 建構函式中的冒號 (:) 語法如何用於成員初始化和基底類別呼叫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!