Golang 变量申明的三种方式

Golang 申明变量主要有三种方式:
 一是使用 var 关键字,申明包级或函数级变量;
 二是使用短变量申明方式,只能申明函数级变量,且需指明变量值;
 三是使用 const 关键字,申明包级或函数级常量。

1.var

var 可以申明包级变量,短变量申明方式不可以,这是二者最大的区别。

var name T			// name默认为类型T的零值
var name T = value	// 赋初始值时指明类型
var name = value	// 根据值推断变量类型
var name0, name1 T	// 同时定义多个同类型变量

// 同时定义多个不同类型的变量
var (
	name0 T0 = value0
	name 1 T1 = value1
)

2.短申明方式

短变量申明方式只能申明函数级变量,且需指明初始值。在不用作用域申明的变量,会隐藏上一级作用域的同名变量。

name := value	// 申明一个变量
name0, name1, name2 := value0, value1, value2	// 申明多个变量

3.const

const 用于申明常量,一旦创建,不可赋值修改。const 可以出现在关键字 var 可以出现的地方,声明常量方式与 var 声明变量方式相同,格式如下:

const name T			// 默认值为类型 T 的零值
const name T = value	// 赋初始值
const name = value		// 根据值推断变量类型
const name1, name2 T	// 同时定义多个同类型变量

// 同时定义多个不同类型的变量
const (
	name0 T0 = value0
	name 1 T1 = value1
)

相关推荐