golang reflect problem
golang reflect problem
package main
import (
"fmt"
"reflect"
)
type t1 struct{}
func (t *t1) Name() string {
return "tbl_t1"
}
func main() {
m := t1{}
rv := reflect.ValueOf(m)
fn := rv.MethodByName("Name")
fmt.Println(fn)
//<invalid reflect.Value>
rv2 := reflect.New(rv.Type())
fn = rv2.MethodByName("Name")
fmt.Println(fn)
//ptr
a, _ := rv.Type().MethodByName("Name")
fmt.Println(a.Func)
}
最后更新于 2020-05-19 01:59:38 并被添加「」标签,已有 2896 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处