From d9bdab17c66b4fcae021dc14de38aaf2efdbe0ca Mon Sep 17 00:00:00 2001 From: Akagi201 Date: Sun, 20 Mar 2016 15:09:50 +0800 Subject: [PATCH 1/2] fix typo --- zh/01.3.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/zh/01.3.md b/zh/01.3.md index 660ccfca..97d3cac0 100644 --- a/zh/01.3.md +++ b/zh/01.3.md @@ -53,7 +53,7 @@ - `-installsuffix suffix` 为了和默认的安装包区别开来,采用这个前缀来重新安装那些依赖的包,`-race`的时候默认已经是`-installsuffix race`,大家可以通过`-n`命令来验证 - `-ldflags 'flag list'` 传递参数给5l, 6l, 8l 调用 - `-tags 'tag list'` 设置在编译的时候可以适配的那些tag,详细的tag限制参考里面的 [Build Constraints](http://golang.org/pkg/go/build/) - + ## go clean 这个命令是用来移除当前源码包和关联源码包里面编译生成的文件。这些文件包括 @@ -158,7 +158,7 @@ gofmt的参数介绍 这里我们来举一个简单的例子,例如我们经常会使用`yacc`来生成代码,那么我们常用这样的命令: go tool yacc -o gopher.go -p parser gopher.y - + -o 指定了输出的文件名, -p指定了package的名称,这是一个单独的命令,如果我们想让`go generate`来触发这个命令,那么就可以在当然目录的任意一个`xxx.go`文件里面的任意位置增加一行如下的注释: //go:generate go tool yacc -o gopher.go -p parser gopher.y @@ -173,8 +173,8 @@ gofmt的参数介绍 ## godoc - -在Go1.2版本之前还支持`go doc`命令,但是之后全部已到了godoc这个命令下,需要这样安装`go get golang.org/x/tools/cmd/godoc` + +在Go1.2版本之前还支持`go doc`命令,但是之后全部移到了godoc这个命令下,需要这样安装`go get golang.org/x/tools/cmd/godoc` 很多人说go不需要任何的第三方文档,例如chm手册之类的(其实我已经做了一个了,[chm手册](https://github.com/astaxie/godoc)),因为它内部就有一个很强大的文档工具。 From 1185c802f74a7e77d65461f58995d4fa3680100b Mon Sep 17 00:00:00 2001 From: Akagi201 Date: Sun, 20 Mar 2016 20:11:02 +0800 Subject: [PATCH 2/2] fix typo --- zh/02.2.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/zh/02.2.md b/zh/02.2.md index 4bb4dcc4..9348534c 100644 --- a/zh/02.2.md +++ b/zh/02.2.md @@ -169,7 +169,7 @@ Go中可以使用`+`操作符来连接两个字符串: world` `` ` `` 括起的字符串为Raw字符串,即字符串在代码中的形式就是打印时的形式,它没有字符转义,换行也将原样输出。例如本例中会输出: - + hello world @@ -239,11 +239,11 @@ Go里面有一个关键字`iota`,这个关键字用来声明`enum`的时候采 ) const v = iota // 每遇到一个const关键字,iota就会重置,此时v == 0 - - const ( + + const ( e, f, g = iota, iota, iota //e=0,f=0,g=0 iota在同一行值相同 ) - + const ( a = iota a=0 b = "B" @@ -252,11 +252,11 @@ Go里面有一个关键字`iota`,这个关键字用来声明`enum`的时候采 g //g = 4 ) ->除非被显式设置为其它值或`iota`,每个`const`分组的第一个常量被默认设置为它的0值,第二及后续的常量被默认设置为它前面那个常量的值,如果前面那个常量的值是`iota`,则它也被设置为`iota`。 +>除非被显式设置为其它值或`iota`,每个`const`分组的第一个常量被默认设置为它的0值,第二及后续的常量被默认设置为它前面那个常量的值,如果前面那个常量的值是`iota`,则它也被设置为`iota`。 ### Go程序设计的一些规则 Go之所以会那么简洁,是因为它有一些默认的行为: -- 大写字母开头的变量是可导出的,也就是其它包可以读取的,是公用变量;小写字母开头的就是不可导出的,是私有变量。 +- 大写字母开头的变量是可导出的,也就是其它包可以读取的,是公有变量;小写字母开头的就是不可导出的,是私有变量。 - 大写字母开头的函数也是一样,相当于`class`中的带`public`关键词的公有函数;小写字母开头的就是有`private`关键词的私有函数。 ## array、slice、map @@ -395,7 +395,7 @@ slice有一些简便的操作 这个例子里面slice的容量是8,新版本里面可以指定这个容量 slice = array[2:4:7] - + 上面这个的容量就是`7-2`,即5。这样这个产生的新的slice就没办法访问最后的三个元素。 如果slice是这样的形式`array[:i:j]`,即第一个参数为空,默认值就是0。 @@ -490,5 +490,3 @@ slice有一些简便的操作 * [目录]() * 上一章: [你好,Go](<02.1.md>) * 下一节: [流程和函数](<02.3.md>) - -