了解靜態成員的未定義引用
使用包含靜態資料成員的類別時,您可能會遇到與「未定義引用”相關的錯誤。這可能是由於對聲明和定義缺乏清晰的理解。
宣告與定義
在類別宣告中,靜態資料成員通常被宣告但不被定義。該聲明確定了成員的存在和類型。但是,除非以需要位址的方式使用它,否則還不需要特定的定義。
要為靜態資料成員提供定義,應將其放置在包含實現的單獨來源檔案中為了班級。定義由成員名稱組成,前面是類別 :: 作用域運算符,後面跟著可選的初始值設定項。
常數例外
對於常數靜態成員對於整型或枚舉類型,可以在類別聲明中提供初始值設定項。這並不否定原始檔案中定義的需要,但它確保定義不包含初始值設定項。
範本
類別的靜態資料成員範本的定義不同。該定義與類別聲明一起包含在頭文件中。單一定義規則的這一例外允許為模板的每個實例化定義一次靜態成員。
靜態的其他用途
除了靜態資料成員之外, static也可以應用於非類別上下文中的函數和對象,其中它表示不同的含義:
透過理解透過這些概念,您可以有效地處理 C 中的靜態資料成員並避免與未定義引用相關的錯誤。
以上是為什麼我在 C 中得到對靜態成員的「未定義引用」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!