go语言中常量的用法

概念

成都创新互联专注于石屏网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供石屏营销型网站建设,石屏网站制作、石屏网页设计、石屏网站官网定制、微信小程序服务,打造石屏网络公司原创品牌,更为您提供石屏网站排名全网营销落地服务。

Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。

罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊(Ken Thompson)于2007年9月开始设计Go,稍后Ian Lance Taylor、Russ Cox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。在2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。 目前,Go每半年发布一个二级版本(即从a.x升级到a.y)。

常量含义 : 

go 语言中 常量表示固定的值,常量不能在赋予其他值,常量可以是全局常量,也可以是函数内部的局部常量。常量的值不可修改,常量表达式的值在编译期计算,而不是在运行期。存储在常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。

常量使用const 定义

定义常量

package main

import "fmt"

func changl()  {
    const x = 55
    fmt.Println(x)
}

func main()  {
    changl()

    输出:55 
}

修改常量,报错

package main

import "fmt"

func chang1()  {
    const x = 55
    x = 34
    fmt.Println(x)
}

func main()  {
    chang1()

输出:
报错  cannot assign to x
}

在const 使用iota

func changl2()  {
    const(
        Monday = iota +1 
        Tue
        Wed
        Thu
        Fri
        Sat
        Sun
    )
    fmt.Println(Monday,Tue,Wed,Thu,Fri,Sat,Sun)
}

在主函数中调用
func main()  {
changl2()

}

输出内容:
1 2 3 4 5 6 7

iota 从0开始

在常量中使用 iota 可以进行位运算

func changl3()  {
    const(
        Open = 1 << iota  // 相当2的0 次方
        Close //  位移1位 相当与 2 的1次方,以下相同
        Pending 
        Crashing
    )
    fmt.Println(Open,Close,Pending,Crashing)
}

在主函数中调用
输出  1 2 4 8

iota 使用总结

  • iota只能被使用在const限定中,相当于一个常量的计数器
  • iota相当于一个枚举值,默认从0开始,在一个const中,会进行+1,
  • iota不会因为const中被赋值了固定值,就不再增加,const中每有一个常量就+1,例如 x和y ,y并没有因为x被赋值为10,就是2,而是3
  • 每次进入一个新的const,iota都会重新开始计算


当前文章:go语言中常量的用法
URL标题:http://myzitong.com/article/popdgh.html