如果我有以下情況:|--main.go|--models |-- defenitions.go在definistions.go我有以下內(nèi)容:package modelstype Person struct { name string age uint}如果我想打電話Person,main.go我必須使用它;package mainimport "models"func main(){ p := models.Person{name: "Karam", age: 5}}有沒有辦法避免提及models.Person{...}并且只能使用Person{...}
2 回答

尚方寶劍之說
TA貢獻1788條經(jīng)驗 獲得超4個贊
有沒有辦法避免提及 models.Person{...} 并且只能使用 Person{...}
不。
(好吧,從技術上講這是錯誤的,但是編寫 models.Person在每種情況下都是正確的import . "models"
(包括你的?。?,你永遠不應該使用像 . 這樣的點導入。如果你這樣做,每個人都會討厭你。)

鳳凰求蠱
TA貢獻1825條經(jīng)驗 獲得超4個贊
正如@Volker 所指出的那樣,試圖表示models.Person{...} asPerson{...}實際上是沒有意義的。
如果你關心的是更長的包名,你總是可以使用導入別名,如下面的代碼所示
package main
import m "models"
func main(){
p := m.Person{name: "Karam", age: 5}
}
- 2 回答
- 0 關注
- 123 瀏覽
添加回答
舉報
0/150
提交
取消