我基本上想知道返回到src/main.rs::main()
顶部的最佳方法是什么?
也许是这样的:
mod main;
pub fn main() {
crate::main();
}
或者可能是内置了一个关键字?
我想通过“重新启动程序”来处理某些类型的错误。
发布于 2020-02-02 14:07:19
有很多种方法,我建议简单的一个,使用一个循环:
enum Error {
A,
}
fn run() -> Result<(), Error> {
if rand::random() {
Ok(())
} else {
Err(Error::A)
}
}
pub fn main() {
while let Err(_) = run() {
println!("Hello");
}
}
但是,请确保程序结束时可能会添加一个最大失败计数器。
https://codereview.stackexchange.com/questions/236506
复制相似问题