标识符的命名规范
- 标识符概念
- Golang 对各种变量、方法、函数等命名时使用的字符序列称为标识符
- 凡是自己可以起名字的地方都叫标识符
- 标识符的命名规则
- 由 26 个英文字母大小写,0-9 ,_ 组成
- 数字不可以开头。
- var num int //ok
- var 3num int //error
- Golang 中严格区分大小写。
- var num int var Num int
- 说明:在 golang 中,num 和 Num 是两个不同的变量
//Golang中严格区分大小写
//Golang中认为 num 和Num是不同的变量
var num int = 13
var Num int = 14
fmt.Printf("num = %v Num = %v", num, Num)
- 输出:
- 标识符不能包含空格
- 下划线 "_" 本身在 Go 中是一个特殊的标识符,称为空标识符。
- 可以代表任何其它的标识符,但是它对应的值会被忽略(比如:忽略某个返回值)。
- 所以仅能被作为占位符使用,不能作为标识符使用
不能以系统保留关键字作为标识符(一共有 25 个),比如 break,if 等等...
- 标识符的案例
- _ab // ok
- int // ok ,不是保留关键字,但我们要求大家不要这样使用
- hello // ok
- hello12 //ok
- 1hello // error ,不能以数字开头
- h-b // error ,不能使用 - x h // error, 不能含有空格
- h_4 // ok
- x h // error, 不能含有空格
- float32 // ok , 我们要求大家不要这样使用
- _ // error
- Abc // ok
标识符命名注意事项
- 包名:保持 package 的名字和目录保持一致,尽量采取有意义的包名,简短,有意义,不要和标准库不要冲突
- 变量名、函数名、常量名:采用驼峰法
- 举例:
-
var stu N ame string = “tom” 形式 : xxxYyyyyZzzz ...
-
var good P rice float32 = 1234.5
- 如果变量名、函数名、常量名首字母大写,则可以被其他的包访问;如果首字母小写,则只能在本包中使用
- 注:可以简单的理解成,首字母大写是公开的,首字母小写是私有的,在 golang 没有public , private 等关键字。
- 演示案例:如果定义为小写
- 目录结构
package mode
//定义了一个变量
var heroName string = "鲁班七号"
- 使用:
package main
import(
"fmt"
//为了使用utils.go文件中的变量或者函数,我们需要先引入该mode包
"go_code/chapter04/identifierdemo/mode"
)
func main(){
fmt.Println(mode.heroName)
}
- 编译报错:
- 演示案例:定义时使用大写
package mode
//定义了一个变量
var HeroName string = "鲁班七号"
- 使用:
package main
import(
"fmt"
//为了使用utils.go文件中的变量或者函数,我们需要先引入该mode包
"go_code/chapter04/identifierdemo/mode"
)
func main(){
fmt.Println(mode.HeroName)
}
- 输出结果: