眾所周知,以大寫字母開頭的字段是公共字段,非大寫字母開頭的字段是私有字段。但golang也支援匿名字段。例如:
type myType struct { string }
這些欄位是為嵌入而設計的。但這個欄位是公共的還是私有的?
如果嵌入類型的類型名稱是小寫的,則它具有包可見性。例如:
type t struct { string } func main() { x := t{} x.string = "a" fmt.println(x) }
但是,如果您將類型 t
移到另一個套件 p
:
package p type t struct { string }
package main import "testmod/p" func main() { x := p.T{} x.string = "a" // Error }
以上是Go 結構匿名欄位是公共的還是私有的?的詳細內容。更多資訊請關注PHP中文網其他相關文章!