reflect

作者: wncbbnk | 来源:发表于2018-07-26 00:01 被阅读0次
type T struct {
    A int
    B string
}
t := T{23, "skidoo"}
// ValueOf只是拿到指针, 无法修改, 通过Elem获得实际指向的数据的reflect.Value形式
s := reflect.ValueOf(&t).Elem()
typeOfT := s.Type()
// 遍历Field
for i := 0; i < s.NumField(); i++ {
    f := s.Field(i)
    // fmt.Printf函数后面的参数传入就是interface{}, 因此有能力从interface{}中抓取实际的值
    fmt.Printf("%d: %s %s = %v\n", i,
        typeOfT.Field(i).Name, f.Type(), f.Interface())
}

相关文章

  • ES6(十二)—— Reflect

    Reflect 反射,什么是反射机制? Reflect简介 为什么要用Reflect? Reflect API.a...

  • Reflect反射与代理Proxy

    先看看Reflect有多少属性方法 所以Reflect.set()与Reflect.get()相反 Reflect...

  • golang-reflect

    reflect 示例0 reflect示例1 reflect 示例2 通过反射修改对象属性 reflect 示例3...

  • Go语言学习笔记-反射和Unsafe

    reflect.TypeOf vs reflect.ValueOf reflect.TypeOf 返回类型(ref...

  • 反射

    什么是反射? 为何需要检查变量,确定变量的类型? reflect 包reflect.Type 和 reflect....

  • 反射的用法

    什么是反射? 为何需要检查变量,确定变量的类型? reflect 包reflect.Type 和 reflect....

  • 反射

    反射初识 reflect对象获取接口变量信息 reflect对象设置实际变量的值 reflect对象进行方法的调用

  • CSS3之box-reflect制作倒影

    box-reflect box-reflect:none | ?

  • 反射的实现原理

    反射的demopackage com.java.reflect;import java.lang.reflect....

  • Go奇技淫巧

    string的本质:reflect.StringHeader{}slice的本质:reflect.SliceHea...

网友评论

      本文标题:reflect

      本文链接:https://www.haomeiwen.com/subject/cpqvmftx.html