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都会重新开始计算

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网页名称:go语言中常量的用法-创新互联
网页网址:http://pwwzsj.com/article/dehsoo.html