有几份关于Rust 的文件提到了失败!作为一种在出现错误时中止执行的方法.

例如,chapter 27 of Rust By Example(2014年11月16日访问)表示:

fail!宏可用于生成任务失败并开始展开其堆栈.在展开时,运行时将通过调用其所有对象的析构函数来释放任务拥有的所有资源.

但是,当我try 在自己的代码中使用此选项时,我会出现以下错误:

error: macro undefined: 'fail!'

你可以点击"Rust By example"页面上的"Run"来为自己复制.

Rust标准库中失败的地方是什么?

推荐答案

它已更名为panic!,见Issue 17489the nightly doc

Rust相关问答推荐

为什么父作用域中的变量超出了子作用域

有没有办法模仿对象安全克隆?

铁 rust 干线无法使用PowerShell获取环境变量

我如何制作一个变异迭代器来锁定内部数据直到删除?

我可以在不收集或克隆的情况下,将一个带有Item=(key,val)的迭代器拆分成单独的key iter和val iter吗?

如何将单个 struct 实例与插入器一起传递到Rust中的映射

RUST 中的读写器锁定模式

当推送到 HashMap 中的 Vector 时,类型 `()` 无法取消引用

实现AsyncWrite到hyper Sender时发生生命周期错误

从Rust 的临时文件中创建引用是什么意思?

Rust 编译器不统一在 if let 表达式的分支中都 impl Future 的类型

分配给下划线模式时会发生什么?

由特征键控的不同 struct 的集合

如何刷新 TcpStream

无法理解 Rust 对临时值的不可变和可变引用是如何被删除的

为什么指定生命周期让我返回一个引用?

如何获取包裹在 Arc<> 和 RwLock<> 中的 Rust HashMap<> 的长度?

意外的正则表达式模式匹配

为什么可以从闭包中返回私有 struct

提取 struct 生成宏中字段出现的索引