函数

基本语法与调用

fn main() {
    println(add(77, 33)) // 输出 110
    println(sub(100, 50)) // 输出 50
}

fn add(x int, y int) int {
    return x + y
}

fn sub(x int, y int) int {
    return x - y
}

与 Go 和 C 类似:

  1. 参数类型后置: 参数列表中,类型写在参数名之后(如 x int, y int)。
  2. 不支持重载: 函数不能同名重载(Overloading)。这简化了代码结构,提高了可维护性和可读性。

声明提升

函数可以在声明之前被调用:如示例中 addsub 的声明位于 main 之后,但仍可在 main 中被调用。V 语言的所有声明都具备此特性,完全消除了头文件 (header files) 的需求,也无需担心文件或声明的顺序问题。

多值返回

V 函数可以轻松返回多个值:

fn foo() (int, int) {
    return 2, 3
}

a, b := foo() // 同时接收两个返回值
println(a) // 输出 2
println(b) // 输出 3

c, _ := foo() // 使用 `_` 忽略不需要的第二个返回值
println(c) // 输出 2