Merge pull request #605 from akfork/master

fix typos
This commit is contained in:
astaxie
2016-03-21 08:53:43 +08:00
2 changed files with 11 additions and 13 deletions

View File

@@ -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)),因为它内部就有一个很强大的文档工具。

View File

@@ -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有一些简便的操作
* [目录](<preface.md>)
* 上一章: [你好,Go](<02.1.md>)
* 下一节: [流程和函数](<02.3.md>)