4 回答
TA贡献1853条经验 获得超9个赞
你不能只通过一个完整的包。您可以通过基于它们创建自己的类型来传递不同的类型。如果有一个person.Person:
package models
import (
"huru/models/person"
)
type Person person.Person
//or
type EmbeddedPerson struct{
person.Person
additional string
}
这具有允许您添加自己的功能的优点
func (p Person) CustomFunc() {}
这是一个游乐场链接,显示了其中的一些细微差别:https://play.golang.org/p/1aLOcmsXHV2
TA贡献1777条经验 获得超10个赞
这里的 golang 概念有点不同。在命名空间范围内可用的 golang 结构。
就像每个例子
package models
// struct name should starts with Capital letter to export
type Person struct {
Name string
age int
}
该Person结构将在同一命名空间下的所有文件中可用(例如。models)。您不需要导入它。
但是如果你想在models命名空间之外访问,你必须导入包models并Person使用它访问对象。
前任。
package anotherpackage
import (
"<path to models>/models"
)
var perObj models.Person // here is how you can access the Person struct
如果您仍然不清楚,请告诉我。
TA贡献1871条经验 获得超13个赞
不。
您可以这样使用,例如自定义日志
package customLog
import "log"
func Print(args ...interface{}) {
log.Print(args)
}
package example
func some() {
customLog.Print("hi babay")
}
- 4 回答
- 0 关注
- 156 浏览
添加回答
举报