1 回答

TA貢獻1812條經(jīng)驗 獲得超5個贊
在 Go 中,具有相同包名的兩個或多個文件被視為一個包,這意味著在命名空間內(nèi)可以訪問所有內(nèi)容,包括私有(小寫)和公共(大寫)符號。
例如,如果hashtable.go和linkedlist.go共享相同的包名:
package hashtable
import (
...
)
那么兩者都被認為是同一個文件。
但是,如果它們具有不同的包名稱,最佳做法是將它們保存在單獨的目錄中。
// hashtable.go
package hashtable
import (
...
)
type Hashtable struct {}
// linkedlist.go
package linkedlist
import (
...
)
type Linkedlist struct {}
然后以這種方式組織它們:
project/
├── hashtable
| └── hashtable.go
└── linkedlist
└── linkedlist.go
例如,在hashtable.go, importlinkedlist以使用其公共變量:
// hashtable.go
package hashtable
import (
../linkedlist
)
li = linkedlist.Linkedlist{}
- 1 回答
- 0 關注
- 161 瀏覽
添加回答
舉報