在 Golang 中,結構體是簡單的資料容器。
下面顯示了 Ruby 和 GoLang 中的簡單 Book 類別等效項。
複合文字是一步建立初始化複合型別的語法。我們可以實例化以下類型:
這裡我們將一個新的 Book 實例指派給變數 book
較長的形式是使用 new 關鍵字。這類似於我們在 Ruby 中使用 book = Book.new(..)
實例化一個類別的方式我們將使用 = 符號來分配書籍的屬性(即標題和作者)。
注意到我們在第一個範例中使用了符號 := 嗎?
它是以下宣告變數並為其賦值的詳細方式的語法糖。
當我們需要時,我們也可以使用工廠模式來簡化結構體的初始化:
假設我們希望將書名和作者標記的每個第一個字元大寫。
在 Ruby 中,我們只需在類別中定義一個函數即可。在這裡,我們定義一個名為 to_string() 的函數來列印書名作者。
在 GoLang 中,我們透過將結構傳遞給函數來「附加」函數。
解釋:
Token | Description |
---|---|
func | function keyword |
(book Book) | Attaching the function to the type Book struct - book: variable to access the struct within the function - Book: type of the struct |
ToString() | name of the function |
string | return type of the function |
以上是Go 語言結構的詳細內容。更多資訊請關注PHP中文網其他相關文章!