首頁  >  文章  >  後端開發  >  為什麼我無法在 Go 中匯入特定類型?

為什麼我無法在 Go 中匯入特定類型?

Susan Sarandon
Susan Sarandon原創
2024-11-14 22:24:02197瀏覽

Why Can't I Import a Specific Type in Go?

導入包和類型

問題:

用戶從其應用程式中的單獨包導入類型時遇到問題轉到項目結構。即使在函數宣告中使用了類型,導入語句也會導致有關未使用的導入或未定義類型的警告。

專案結構:

src
|-- config
   |-- config.go
|-- otherPackage
   |-- otherFile.go
|-- main.go

導入嘗試:

import (
    "fmt"
    "math"
    "../config"
)

錯誤:

  • 匯入但未使用
  • 未定義:設定

原因:

由於導入語法不正確而出現問題。在 Go 中,無法從套件中匯入特定類型或函數。只能導入整個包。

解:

要解決此問題,需要修改 import 語句如下:

import (
    "fmt"
    "math"
    "full/import/path/of/config"
)

套件和類型引用:

由於導入了整個包,因此必須使用其完全限定名稱來引用類型:

func function(... config.Config) {}

變數遮蔽:

如果在目前作用域中宣告了與匯入的套件同名的變量,它將遮蔽該套件。為了避免這種情況,請將變數重新命名為其他名稱,例如:

func function(... config.Config) {}
var cfg config.Config

以上是為什麼我無法在 Go 中匯入特定類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn