以下是我正在使用的一些代码的一个非常简化的版本:
fn my_func(i: i32) -> Result<i32, String> {
match i {
42 => Ok(113),
_ => Err("Can only use 42".to_string())
}
}
fn main() {
if my_func(42).is_ok() {
println!("its ok");
}
}
在main()
内,还有一大堆其他if
条语句.
我所需要的就是,如果my_func(42)
可以,在println
语句中打印结果.
我希望能够写出这样的东西
fn my_func(i: i32) -> Result<i32, String> {
match i {
42 => Ok(113),
_ => Err("Can only use 42".to_string())
}
}
fn main() {
if (let result = my_func(42)).is_ok() {
println!("its ok, and result is: {:?}", result);
}
}
怎样才是正确的写法呢?