Rust 的 anyhow 库是一个专注于简化错误处理的工具,特别适合应用程序开发场景。它通过统一的错误类型和便捷的 API,减少模板代码,提升错误信息的可读性。以下是其核心用法及示例:
1. 安装与基础用法
在 Cargo.toml 中添加依赖:
[dependencies]
anyhow = "1.0"
基础示例:
use anyhow::Result;
fn may_fail() -> Result<()> {
// 成功返回 Ok(())
// 失败返回 Err(anyhow::anyhow!("错误信息"))
if condition {
Ok(())
} else {
Err(anyhow::anyhow!("操作失败!"))
}
}
- 统一错误类型:
anyhow::Result<T>是Result<T, anyhow::Error>的别名,可容纳任何实现了std::error::Error的错误类型。
2. 添加上下文信息
使用 Context trait 为错误附加调试信息:
use anyhow::{
Context, Result};
use

最低0.47元/天 解锁文章
1212

被折叠的 条评论
为什么被折叠?



