008 Golang常量声明

视频: https://www.bilibili.com/video/BV16p4y1n7tQ/ 什么是常量 对比变量(variable)用于存储可变的数据,常量(constant)用于存储固定不变的数据,比如: "hello" 3.14 true 与变量声明类似,声明变量用关键词var,声明常量用关键词const 在变量声明各种形式的基础上,将var关键词换成const关键词,即可声明常量: 在Golang中,有两种常量,分别是: 未定类常量(Untyped Constant) 定类常量(Typed Constant) 下面一一介绍~ 未定类常量 声明时未提供类型的常量就是未定类常量(Untyped Constant),比如: 未定类常量具有弹性(flexibility),在可兼容的类型之间转换无需显式转换 如果把const换成var将会报错: 在math内置包里,声明了一组未定类常量: 定类常量 声明时提供类型的常量就是定类常量(Typed Constant),比如: 不同于未定类常量,定类常量在转换时必须显式转换,否则将会报错 上面的例子显示,不能将float64的定类常量pi赋值给float32的变量 常量与变量的不同点 常量声明时必须赋值: 常量不能重新赋值,因为常量的值是固定不变的(fixed): 已声明的常量可以不使用,不同于变量一旦声明必须使用: 短声明语法不能用来声明常量: 常量的数据类型只能是基本数据类型的其中一种: bool string int家族 float家族 complex家族 后面会学到一些类型(比如数组)不能声明为常量,但是如果有新类型是基于基本数据类型的也可以定义为常量: 声明一组常量的语法 定义一组常量非常简单,在math包里已经见过类似的例子: 其中a是未定类的布尔常量,其余都是定类常量,而且我们注意到b==c、d==e,上面的例子可以简化成: c和e都是定类常量,它们与上一行常量类型及数据保持一致 在定义常量组时,如果不提供初始值,则表示将使用上行的表达式,不妨试试: 总结 next time~ :D...

2021年02月18日 · nbody1996