一、标识符
Go中对各种变量、函数等命名时使用的字符序列称为标识符。
(一)标识符的命名规则
- 由26个英文字母大小写、0-9数字、_ 组成
- 数字不能开头
- 严格区分大小写(a和A是两个不同的变量)
- 标识符不能包含空格
- _ 在Go中是一个特殊的标识符,仅能作为占位符使用而不能作为标识符使用,比如返回值使用_进行忽略
- 不能以系统关键字作为标识符使用
下面的案例均是错误的使用:
ab-c //不能以运算符“-”作为标识符 ab c //不能以空格作为标识符 _ //不能以“_”作为标识符 ...
(二)注意事项
- 包名 尽量保持package与目录的名称一致,采用简短、有意义、不和标准库重名的包名
- 变量名、函数名、常量名 采用驼峰法命名
- 如果变量名、函数名常量名首字母大写是公开的,可以被其它包访问,如果首字母小写则是私有的,只能被本包访问
如下:
在main.go文件中引用test包中的变量,引用方法是包名.变量名:
然后执行main.go文件,如果出现类似 main.go:5:2: package go_tutorial/day03/identifier/test is not in GOROOT (D:\go\src\go_tutorial\day03\identifier\test) 这种错误,设置以下如下参数:
go env -w GO111MODULE=off
二、关键字
Go中有保留关键字25个,详情如下表:
break | default | func | interface | select |
case | defer | go | map | struct |
chan | else | goto | package | switch |
const | fallthrough | if | range | type |
continue | for | import | return | var |
三、系统预定义标识符
预定义标识符就是事先定义好的有特殊意义的词,与关键字类似。
append | bool | byte | cap | close | complex | complex64 | complex128 | uint16 |
copy | false | float32 | float64 | imag | int | int8 | int16 | uint32 |
int32 | int64 | iota | len | make | new | nil | panic | uint64 |
println | real | recover | string | true | uint | uint8 | uintptr |