运行
格式化
停止
分享
赞助
package main import ( "fmt" "reflect" ) func getFullName(typ reflect.Type) string { return typ.PkgPath() + "." + typ.Name() } func getMiInd(md interface{}) { val := reflect.ValueOf(md) if val.Kind() != reflect.Ptr { fmt.Println("是指针类型") } else { fmt.Println("不是指针,其类型为:", val.Kind()) } ind := reflect.Indirect(val) typ := ind.Type() name := getFullName(typ) fmt.Println("对象类型名称为:", name) fmt.Println("------------------------", md, "-------------------------") } type Model struct { Id int Name string } func main() { record := Model{} record.Id = 1 record.Name = "www.superzhu.com" getMiInd(record) r2 := &record getMiInd(r2) getMiInd(&r2) }