E0002
注意:编译器不再触发此错误码
该错误表明空匹配值是无效的,因为 match 的匹配类型必须是非空的(已存在的类型的值)。在安全代码中,不可能创建空类型的实例,因此几乎不需要空匹配表达式。此错误通常通过向匹配表达式添加一个或多个 情况(case) 来修复。
空类型的一个例子是 enum Empty { }
, 所以以下的代码是生效的:
enum Empty {}
fn foo(x: Empty) {
match x {
// empty
}
}
然而下面的这个却不行:
fn foo(x: Option<String>) {
match x {
// empty
}
}
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。