struct统一翻译为”结构体“
sunrui318
4年前
修改理由:
相关信息:
- 类型:文档文章
- 文章: 11.10 反射包
- 文档: 《Go 入门指南()》
此投稿已在 4年前 合并。
内容修改:
Old | New | Differences |
---|---|---|
172 | 172 | |
173 | 173 | 反射中有些内容是需要用地址去改变它的状态的。 |
174 | 174 | |
175 | ## 11.10.3 反射结构 | |
176 |
| |
177 | 有些时候需要反射一个结构 | |
178 |
| |
179 | 我们同样能够调用签名在结构 | |
175 | ## 11.10.3 反射结构体 | |
176 | ||
177 | 有些时候需要反射一个结构体类型。`NumField()` 方法返回结构体内的字段数量;通过一个 for 循环用索引取得每个字段的值 `Field(i)`。 | |
178 | ||
179 | 我们同样能够调用签名在结构体上的方法,例如,使用索引 n 来调用:`Method(n).Call(nil)`。 | |
180 | 180 | |
181 | 181 | 示例 11.13 [reflect_struct.go](examples/chapter_11/reflect_struct.go): |
182 | 182 | … | … |
238 | 238 | panic: reflect.Value.SetString using value obtained using unexported field |
239 | 239 | ``` |
240 | 240 | |
241 | 这是因为结构 | |
241 | 这是因为结构体中只有被导出字段(首字母大写)才是可设置的;来看下面的例子: | |
242 | 242 | |
243 | 243 | 示例 11.14 [reflect_struct2.go](examples/chapter_11/reflect_struct2.go): |
244 | 244 |