构建命令行程序:Rust 实战指南
1. 配置解析与错误处理
在开发命令行程序时,首先要处理的是命令行参数的解析。最初的代码如下:
fn main() {
let args: Vec<String> = env::args().collect();
let config = Config::new(&args);
// --snip--
}
impl Config {
fn new(args: &[String]) -> Config {
let query = args[1].clone();
let filename = args[2].clone();
Config { query, filename }
}
}
这里将 parse_config 函数重命名为 Config::new 并移到 impl 块中,使 new 函数与 Config 关联。
不过,这段代码存在错误处理的问题。若 args 向量元素少于三个,访问索引 1 或 2 会导致程序崩溃。运行无参数的程序会出现如下错误:
$ cargo run
Compiling minigrep v0.1.0 (file:///projec
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



