2.1.4 预声明标识符

预声明标识符包含Go语言的基础数据类型和内置函数方法,这些预声明标识符也不可以当作标识符来使用。

预声明标识符与关键字的区别在于:预声明标识符只设置变量的基础数据类型或使用Go语言内置函数方法,关键字定义变量、数据结构和流程控制语句。比如使用关键字var定义变量A,必须定义变量A才能给变量赋值。简单来说,先使用关键字定义变量,再使用预声明标识符设置变量的数据类型,两者在使用上有明显的先后顺序。

以变量Student为例,将变量定义为结构体,结构体就是变量Student的数据类型,但进一步分析,结构体里面每个元素的数据类型都是由预声明标识符定义的,代码如下:

    type Student struct {
       Name string
       Age int
       Score int
    }

结构体里面由一个或多个独立元素组成,比如结构体Student含有成员Name、Age和Score,它们的数据类型是字符串、整型和整型,换句话说,结构体是将多个变量按照一定规则组合而成的数据结构。

Go语言的预声明标识符如表2-2所示。

表2-2 预声明标识符