目录
什么是 Rust 函数
Rust 函数是代码的可重用单元,使用 fn
关键字定义。它封装特定功能,支持参数传递和返回值,是 Rust 程序的基本构建块。
为什么要使用函数
- 代码复用:减少重复代码。
- 模块化:将逻辑分解为独立部分。
- 可读性:通过命名函数表达意图。
- 维护性:便于修改和调试。
函数定义与调用
- 定义:使用
fn
关键字,后跟函数名、参数和返回值类型。 - 调用:直接使用函数名和参数。
- 约定:函数名使用蛇形命名法(
snake_case
)。
fn greet() {
println!("Hello, Rust!");
}
参数与返回值
- 参数:在括号中声明,需指定类型。
- 返回值:
- 使用
->
指定返回类型。 - 无分号的表达式作为返回值,或使用
return
。
fn add(a: i32, b: i32) -> i32 {
a + b // 隐式返回
}
函数表达式与闭包
- 函数体:
- 语句:执行操作,无返回值。
- 表达式:计算并返回值。
- 闭包:
- 使用
|param| expr
定义,捕获环境变量。 - 可赋值给变量,支持灵活调用。
let double = |x| x * 2;
代码示例
基本函数
fn main() {
say_hello();
let sum = add(5, 3);
println!("Sum: {}", sum);
}
fn say_hello() {
println!("Hello from function!");
}
fn add(x: i32, y: i32) -> i32 {
x + y
}
运行结果:
Hello from function!
Sum: 8
多返回值与闭包
fn main() {
let (sum, diff) = calculate(10, 4);
println!("Sum: {}, Diff: {}", sum, diff);
let multiply = |a: i32| a * 2;
println!("Double 5: {}", multiply(5));
}
fn calculate(a: i32, b: i32) -> (i32, i32) {
(a + b, a - b)
}
运行结果:
Sum: 14, Diff: 6
Double 5: 10
参考资料与出站链接
- 官方文档:
- 学习资源:
- 社区支持:
发表回复