C 中的常數資料成員初始化
在C 中,當嘗試在類別聲明中初始化常數資料成員時,會出現諸如「 ISO C 禁止初始化成員」和「使't' 靜態」可能會出現。要解決這個問題,必須了解 const 資料成員的性質。
常數變數表示在程式執行期間無法修改的值。然而,C 要求物件定義具有唯一的聲明。為了遵守這條規則,const 變數不能在類別聲明中定義。
解決方案在於使用初始化列表在類別宣告之外定義 const 變數。初始化const 資料成員的語法為:
className() : memberName(value) {}
在您的範例中:
#include <iostream> using namespace std; class T1 { const int t; public: T1() : t(100) {} }; int main() { T1 obj; cout << "T1 constructor: " << obj.t << endl; return 0; }
此程式碼在物件建構期間使用值100 初始化const 資料成員t,從而避免了上述錯誤。
以上是如何在 C 中正確初始化常數資料成員?的詳細內容。更多資訊請關注PHP中文網其他相關文章!