golang标准库 reflect

reflect.Type reflect.Value

v := reflect.TypeOf(3) // 接受interface{},返回reflect.Type类型的值,该值包含参数的动态类型

fmt包的%T参数,使用reflect.TypeOf来输出

v := reflect.ValueOf(3) // 接受interface{},返回reflect.Value类型的值,该值包含参数的动态值

如果v持有的不是字符串,那么v.String()方法返回其类型

fmt的%v参数会对reflect.Value做特殊处理

v.Type()方法将返回具体类型对应的reflect.Type

x := v.interface() // reflect.Value.interface方法,返回interface{}类型,装载着和v相同的具体值

reflect.Value.Kind()方法,返回有限的几种类型

猜你喜欢

转载自www.cnblogs.com/ts65214/p/12976208.html