E0007

未匹配的标注

注意:编译器不再触发此错误码

这个错误表明匹配分支中的绑定将一个值移动到多个位置,从而违反了唯一所有权。下面的代码是无效的,因为其要求整个 Option<String> 移动到名为 op_string 的变量中,同时又要求将内部的 String 移动到一个叫做 s 的变量中。

错误代码示例:

#![feature(bindings_after_at)]

let x = Some("s".to_string());

match x {
    op_string @ Some(s) => {}, // error: use of moved value
    None => {},
}

同时请参阅 error E0303。

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/rust-rcei-2020/...

译文地址:https://learnku.com/docs/rust-rcei-2020/...

上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 查看所有版本


暂无话题~