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 声明变量方式相同,格式如下:

constname T            // 默认值为类型 T 的零值constname T = value    // 赋初始值constname = value      // 根据值推断变量类型constname1, name2 T    // 同时定义多个同类型变量// 同时定义多个不同类型的变量const(    name0 T0 = value0    name 1 T1 = value1)

原文链接:https://cloud.tencent.com/developer/article/1581228