Go 标识符的命名规范及注意事项

标识符的命名规范


  • 标识符概念
    • Golang对各种变量、方法、函数等命名时使用的字符序列称为标识符
    • 凡是自己可以起名字的地方都叫标识符
  • 标识符的命名规则
    • 由 26 个英文字母大小写,0-9 ,_ 组成
    • 数字不可以开头
      • var num int        //ok
      • var 3num int       //error
    • Golang 中严格区分大小写。
      • var num int              var Num int  
      • 说明:在golang中,numNum是两个不同的变量
//Golang中严格区分大小写
//Golang中认为 num 和Num是不同的变量
var num int = 13
var Num int = 14
fmt.Printf("num = %v Num = %v", num, Num)
  • 输出:


  • 标识符不能包含空格


  • 下划线 "_" 本身在Go中是一个特殊的标识符,称为空标识符
    • 可以代表任何其它的标识符,但是它对应的值会被忽略(比如:忽略某个返回值)
    • 所以仅能被作为占位符使用,不能作为标识符使用

不能以系统保留关键字作为标识符(一共有25个),比如breakif等等...


  • 标识符的案例
  • _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)
}
  • 输出结果:


版权声明:本文为baidu_41388533原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。