From de3bc9bfabeb9cc206f0715ddc4a4826a301bb6e Mon Sep 17 00:00:00 2001 From: songleo Date: Tue, 15 Mar 2016 12:34:44 +0800 Subject: [PATCH] auto commit --- eBook/10.3.md | 2 +- eBook/10.4.md | 4 ++-- eBook/10.5.md | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/eBook/10.3.md b/eBook/10.3.md index b97cb0e..07a85df 100644 --- a/eBook/10.3.md +++ b/eBook/10.3.md @@ -2,7 +2,7 @@ 下面的例子中,main.go 使用了一个结构体,它来自 struct_pack 下的包 structPack。 -示例 10.5 structPack.go: +示例 10.5 [structPack.go](examples/chapter_10/struct_pack/structPack.go): ```go package structPack diff --git a/eBook/10.4.md b/eBook/10.4.md index e590e3e..b4d0732 100644 --- a/eBook/10.4.md +++ b/eBook/10.4.md @@ -1,8 +1,8 @@ # 10.4 带标签的结构体 -结构体中的字段除了有名字和类型外,还可以有一个可选的标签(tag):它是一个附属于字段的字符串,可以是文档或其他的重要标记。标签的内容不可以在一般的编程中使用,只有包 `reflect` 能获取它。我们将在下一章(第 11.10 节)中深入的探讨 `reflect`包,它可以在运行时自省类型、属性和方法,比如:在一个变量上调用 `reflect.TypeOf()` 可以获取变量的正确类型,如果变量是一个结构体类型,就可以通过 Field 来索引结构体的字段,然后就可以使用 Tag 属性。 +结构体中的字段除了有名字和类型外,还可以有一个可选的标签(tag):它是一个附属于字段的字符串,可以是文档或其他的重要标记。标签的内容不可以在一般的编程中使用,只有包 `reflect` 能获取它。我们将在下一章(第 [11.10 节](11.10.md))中深入的探讨 `reflect`包,它可以在运行时自省类型、属性和方法,比如:在一个变量上调用 `reflect.TypeOf()` 可以获取变量的正确类型,如果变量是一个结构体类型,就可以通过 Field 来索引结构体的字段,然后就可以使用 Tag 属性。 -示例 10.7 struct_tag.go: +示例 10.7 [struct_tag.go](examples/chapter_10/struct_tag.go): ```go package main diff --git a/eBook/10.5.md b/eBook/10.5.md index 70022ce..26ab16b 100644 --- a/eBook/10.5.md +++ b/eBook/10.5.md @@ -8,7 +8,7 @@ 考虑如下的程序: -示例 10.8 structs_anonymous_fields.go: +示例 10.8 [structs_anonymous_fields.go](examples/chapter_10/structs_anonymous_fields.go): ```go package main @@ -64,7 +64,7 @@ func main() { 另外一个例子: -示例 10.9 embedd_struct.go: +示例 10.9 [embedd_struct.go](examples/chapter_10/embedd_struct.go): ```go package main @@ -100,7 +100,7 @@ func main() { 当两个字段拥有相同的名字(可能是继承来的名字)时该怎么办呢? -1. 外层名字会覆盖内层名字(但是两者的内存空间都保留),这提供了一种重载字段或方法的方式 +1. 外层名字会覆盖内层名字(但是两者的内存空间都保留),这提供了一种重载字段或方法的方式; 2. 如果相同的名字在同一级别出现了两次,如果这个名字被程序使用了,将会引发一个错误(不使用没关系)。没有办法来解决这种问题引起的二义性,必须由程序员自己修正。 例子: