- 变量
变量
name := 'Bob'age := 20large_number := i64(9999999999)println(name)println(age)println(large_number)
变量使用:=声明和初始化,这是V语言唯一定义变量的方式。因此,V语言中所有的变量必须指定一个初始化的值。
变量的类型是从右值推导来的。要使用其它类型,必须手工强制转换类型:使用T(v)表达式将v转换为T类型。
和其它主流语言不同的是,V语言只能在函数内部定义变量。V语言没有模块级别的全局变量,因此也没有全局状态。
mut age := 20println(age)age = 21println(age)
使用=给变量重新赋值。不过在V语言中,变量默认是不可再次改变的。如果需要再次改变变量的值,必须用mut修饰变量。可以尝试删除mut,然后再编译上面的代码。
需要注意:=和=的差异,前者是用于声明和初始化变量,后者是重新给变量赋值。
fn main() {age = 21}
上面的代码将不能编译,因为变量没有被声明过。V语言中所有的变量必须要先声明。
fn main() {age := 21}
上面的代码依然不能被编译,因为V语言中禁止声明没有被使用的变量。
fn main() {a := 10if true {a := 20}}
和很多其它语言不同的是,不同块作用域的变量不得重名。上面的例子中,变量a已经在外层被声明过,因此不能再声明a名字的变量。
