摘要: Rust 核心 Trait 详解 1. Drop • 作用: 自定义值离开作用域时的清理逻辑 • Trait 定义: pub trait Drop { fn drop(&mut self); } • 关键点: • 自动调用,无法手动触发(可用 std::mem::drop 强制提前释放) • 用于释 阅读全文
posted @ 2025-03-22 17:57 xwher 阅读(50) 评论(0) 推荐(0)
摘要: 我们将讨论rust中的crates和modules的概念来帮助组织项目 crates rust程序是由crates组成的,每个crate是单个库或可执行文件以及一些可选信息。 当使用cargo build --verbose来构建时,可以看到依赖信息;我们也可以在Cargo.toml中指定依赖的版本 阅读全文
posted @ 2025-03-22 10:39 xwher 阅读(64) 评论(0) 推荐(0)
摘要: rust中有两种不同的错误处理方式:panic和Result panic 这种错误是不应该出现的,这意味着程序本身有bug,例如数组访问越界等。当然也可以像println!一样显式地调用panic!()。当这些错误出现时,我们如何处理?rust提供两个方式: unwind stacks(defaul 阅读全文
posted @ 2025-03-22 09:16 xwher 阅读(23) 评论(0) 推荐(0)
摘要: 我们将在这篇博客中,讨论rust的expression概念,rust中大部分代码都通过表达式来完成。 表达式语言 C中的表达式有值,而语句没有值。rust是一个表达式语言,这个传统可以追溯到LISP。在C中if和switch都是语句。它们并不产生值;而在rust中if和match可以产生值。这也解释 阅读全文
posted @ 2025-03-22 08:38 xwher 阅读(19) 评论(0) 推荐(0)