Go语言常量
常量中的数据类型只能是布尔型、数字型(整数型、浮点型和复数)和字符串型。 常量的定义格式: //const 常量名 类型 值 const identifier [type] = value 可以省略类型说明符[type],因为编译器可以根据变量值来推断其类型。
无论是变量还是常量,不同类型的都不能显式的声明在一行: var a int,b float32 = 1,2.4 //编译器不通过 const c int,d float32 = 3,4.4 //编译器不通过 const c,4 //编译通过(此时c和d都是float32类型) const c,d = 3,4.4 //编译通过(此时c是int类型,d是float64类型) 说明:我们可以通过 常量可以用len()、cap()、unsafe.Sizeof()常量计算表达式的值。常量表达式中,函数必须是内置函数,否则编译不通过,因为在编译期间自定义函数均属于未知,因此无法用于常量的赋值: package main iota,特殊常量,可以认为是一个可以被编译器修改的常量。 在每一个const关键字出现时,被重置为0,然后在下一个const出现之前,每出现一次iota,其所代表的数字会自动增加1。iota可以被用作枚举值: const( a = iota b = iota c = iota ) 第一iota等于0,每当iota在新的一行被使用时,它的值都会自动加1;所以a=0,b=1,c=2,可以简写为如下形式: const( a = iota b c ) 用法示例: package main 输出结果为 0 1 2 itbsl itbsl 200 200 7 8 当我们定义常量时,如果多个常量的值相同,后面的常量可以直接不赋值,默认等同于上面已赋值的常量的值 package main 输出结果为 itbsl itbsl itbsl (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |