作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Golang 的“fmt”包有一个名为 Printf("%+v", anyStruct)
的转储方法。 .我也在寻找任何方法来转储结构及其方法。
例如:
type Foo struct {
Prop string
}
func (f Foo)Bar() string {
return f.Prop
}
Bar()
是否存在
Foo
类型的初始化实例中的方法(不仅是属性)。
最佳答案
您可以使用 reflect
列出类型的方法。包裹。例如:
fooType := reflect.TypeOf(Foo{})
for i := 0; i < fooType.NumMethod(); i++ {
method := fooType.Method(i)
fmt.Println(method.Name)
}
func implementsBar(v interface{}) bool {
type Barer interface {
Bar() string
}
_, ok := v.(Barer)
return ok
}
...
fmt.Println("Foo implements the Bar method:", implementsBar(Foo{}))
var _ Barer = Foo{}
关于go - 如何在 Golang 中转储结构的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60571159/
我正在为我的应用程序使用 Tank-Auth。我唯一的问题是激活和重置帐户密码。 用于登录、注册、注销;我对这些代码没有问题; $route['login'] = "/auth/login"; $ro
我是一名优秀的程序员,十分优秀!