函数与方法
Rust 使用函数和方法来封装可复用代码,函数在作用域外定义,方法绑定在结构体或枚举等类型上。
函数定义与调用
函数使用 fn 关键字定义,支持参数和返回值:
fn add(a: i32, b: i32) -> i32 {
a + b
}
fn main() {
let result = add(5, 3);
println!("5 + 3 = {}", result);
}
无返回值的函数
Rust 中返回空元组 () 表示无返回值:
fn greet(name: &str) {
println!("Hello, {}!", name);
}
方法与关联函数
方法定义在 impl 块中,第一个参数通常是 &self,表示调用该方法的实例:
struct Rectangle {
width: u32,
height: u32,
}
impl Rectangle {
fn area(&self) -> u32 {
self.width * self.height
}
fn new(width: u32, height: u32) -> Self {
Self { width, height }
}
}
fn main() {
let rect = Rectangle::new(10, 20);
println!("矩形面积: {}", rect.area());
}
函数作为一等公民
Rust 支持将函数作为参数或返回值,也支持闭包:
fn apply<F>(f: F) where F: Fn() {
f();
}
fn main() {
let greeting = || println!("Hello from closure!");
apply(greeting);
}
struct Rectangle {
width: u32,
height: u32,
}
impl Rectangle {
fn area(&self) -> u32 {
self.width * self.height
}
fn new(width: u32, height: u32) -> Self {
Self { width, height }
}
}
fn add(a: i32, b: i32) -> i32 {
a + b
}
fn main() {
let rect = Rectangle::new(10, 20);
println!("矩形面积: {}", rect.area());
let sum = add(5, 3);
println!("5 + 3 = {}", sum);
}
相关内容
- 什么是 Rust? Rust 是一门注重性能与安全的系统级编程语言,采用独特的所有权机制保障内存安全,避免数据竞争和悬垂指针,适用于系统开发、嵌入式和高并发场景。
- Rust 的历史和发展背景 Rust 起源于 Mozilla,最初由 Graydon Hoare 创建,旨在解决传统系统编程语言如 C/C++ 所面临的内存安全问题,经过多年社区发展,已成...
- Rust 的优点和适用场景 Rust 以内存安全、高性能和零成本抽象著称,适合系统编程、高并发服务、嵌入式开发和 WebAssembly 应用,是 C/C++ 的现代替代方案。
- 在不同操作系统上安装 Rust Rust 提供跨平台的安装方式,可在 Windows、macOS 和各类 Linux 系统上快速安装,推荐使用官方安装工具 rustup 进行统一管理和更新。
- 配置 Rust 开发环境 配置 Rust 开发环境主要包括设置环境变量、选择合适的编辑器和插件、管理工具链版本,以获得高效流畅的开发体验。
- 使用 Rust 的基本工具链 Rust 提供丰富的基本工具链,包括编译器 rustc、包管理器 cargo、文档生成器 rustdoc 和测试工具,构建现代软件项目高效可靠。