首頁 > 後端開發 > Golang > 如何在 Go 中初始化嵌入式結構體?

如何在 Go 中初始化嵌入式結構體?

Mary-Kate Olsen
發布: 2024-11-11 01:30:02
原創
595 人瀏覽過

How to Initialize Embedded Structs in Go?

理解 Go 中的嵌入式結構體初始化

Go 提供了嵌入的概念,允許結構體包含其他類型的字段,而無需重複其實現。在嵌入結構的脈絡中,初始化匿名內部結構成為一項重要任務。

在MyRequest 中初始化匿名內部結構

考慮以下程式碼片段,其中MyRequest 結構嵌入了http.Request struct:

type MyRequest struct {
    http.Request
    PathParams map[string]string
}
登入後複製

要在New 函數中初始化匿名內部結構體http.Request,可以依照下列方法操作:

  • 使用 new 關鍵字:
req := new(MyRequest)
req.PathParams = pathParams
req.Request = origRequest
登入後複製
  • 使用結構體語法:
req := &MyRequest{
  PathParams: pathParams
  Request: origRequest
}
登入後複製

兩種方法都實現了初始化http 的相同目標.MyRequest 結構體的請求字段,帶有提供的origRequest 參數。

參考

更深入了解結構體中的嵌入和欄位命名,請參閱Go 官方文件:

  • https://golang.org/ ref/spec#Struct_types

以上是如何在 Go 中初始化嵌入式結構體?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板