【发布时间】:2016-01-09 07:10:16
【问题描述】:
假设我有一个enum:
enum Foobar {
Foo(i32),
Bar(f64)
}
我还有一个以Foobar 为参数的函数:
fn foo(x: &mut Foobar) {
match x {
Foobar::Foo(i32) => { /* do something */ },
Foobar::Bar(f64) => { /* panic */ }
}
}
如果函数的调用者在不使用编译器插件的情况下将Bar 变体传递给函数,是否可能引发编译时错误?
【问题讨论】: