反射练习
|
字数总计:
640
|
阅读时长:
1分钟
|
阅读量:
654
这篇文章距离最后更新已过45 天,如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!
- 定义一个结构体
- 给结构体赋值
- 用反射获取结构体的下标、结构体名称、类型、值
- 改变结构体的值
type T struct { #定义结构体
A int
B string
}
func main() {
t := T{23, "Murphy"} #给结构体赋值
s := reflect.ValueOf(&t).Elem() #获取指向t的指针的具体值的封装
typeOfT := s.Type() #结构体的类型
for i := 0; i < s.NumField(); i++ { #结构体字段数
f := s.Field(i) #获取结构体的第i个字段
fmt.Printf("%d: %s %s = %v\n", i,
typeOfT.Field(i).Name, f.Type(), f.Interface()) #依次输出 结构体下标、字段名,字段类型,值
}
s.Field(0).SetInt(77)
s.Field(1).SetString("Sunset Strp")
fmt.Println("t is now", t)
}
0: A int = 23
1: B string = Murphy
t is now {77 Sunset Strp}
Успешное казино пин-ап
ice cassino [url=https://www.pinupcasinojenzolo.com/]https://www.pinupcasinojenzolo.com/[/url].
Пин-ап казино - место для развлечений
jogos de cassino [url=https://pinupcasinojenzolo.com/]https://pinupcasinojenzolo.com/[/url].