Golang常量iota的使用实例
Codes
packagemain import"fmt" typecolorbyte const( blackcolor=iota red blue ) functest(ccolor){ fmt.Println(c) } funcmain(){ const( x=iota//0 y//1 z//2 ) fmt.Printf("x=%v,y=%v,z=%v\n",x,y,z) const( _=iota KB=1<<(10*iota)//1<<(10*1) MB//1<<(10*2) GB//1<<(10*3) ) fmt.Printf("KB=%v,MB=%v,GB=%v\n",KB,MB,GB) const( _,_=iota,iota*10//0,0*10 aa,bb//1,1*10 cc,dd//2,2*10 ) fmt.Printf("aa=%v,bb=%v,cc=%v,dd=%v\n",aa,bb,cc,dd) const( a=iota//0 b//1 c=100//100 d//100 e=iota//4 f//5 ) fmt.Printf("a=%v,b=%v,c=%v,d=%v,e=%v,f=%v\n",a,b,c,d,e,f) const( g=iota//0 hfloat32=iota//1 i=iota//2 ) fmt.Printf("g:%T%v,f:%T%v,h:%T%v\n",g,g,h,h,i,i) test(black)//0 test(red)//1 test(blue)//2 test(100)//100并未超出color/byte类型取值范围 //xx:=2 //test(xx) }
Result
x=0,y=1,z=2
KB=1024,MB=1048576,GB=1073741824
aa=1,bb=10,cc=2,dd=20
a=0,b=1,c=100,d=100,e=4,f=5
g:int0,f:float321,h:int2
0
1
2
100
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接