常量(Constants)


const (
	Pi = 3.14
	World = '世界'
)
 
fn main() {
	println(Pi)
	println(World)
}

使用 const关键字来申明常量,常量定义的位置只能在模块级别(函数外)。

必须使用“大驼峰拼写法(PascalCase)”来命名常量,这有助于和变量区分开来。很多人喜欢“全大写”命名常量,比如TOP_CITIES,这在V语言中效果不佳,因为V语言中的常量比其他语言中的常量更强大,它们可恶意表示更复杂的结构,并且经常使用,因为没有全局变量:

println('Top cities: $TOP_CITIES.filter(.usa)')

vs

println('Top cities: $TopCities.filter(.usa)')

常量的值一经定义,永远不能修改。


V语言中的常量比大多数语言更灵活,你可以指定更复杂的值:

struct Color {
        r int
        g int
        b int
}
 
fn (c Color) str() string { return '{$c.r, $c.g, $c.b}' }
 
fn rgb(r, g, b int) Color { return Color{r: r, g: g, b: b} }
 
const (
        Numbers = [1, 2, 3]
 
        Red  = Color{r: 255, g: 0, b: 0}
        Blue = rgb(0, 0, 255)
)
 
fn main() {
        println(Numbers)
        println(Red)
        println(Blue)
} 

V语言中没有全局变量,常量就更加有用了。