linuxfood 为 sqlite3 创建了绑定,对此我表示感谢。我刚开始学习 Rust (0.8),我试图准确理解这段代码在做什么:
extern mod sqlite;
fn db() {
let database =
match sqlite::open("test.db") {
Ok(db) => db,
Err(e) => {
println(fmt!("Error opening test.db: %?", e));
return;
}
};
我基本上明白它在做什么。它正在尝试获取数据库连接并测试错误。我不明白它是如何做到的。
为了更好地理解它,我想在没有match
语句的情况下重写它,但我没有这样做的知识。那可能吗?sqlite::open()
返回两个变量,还是只返回一个?
match
如果没有这个语句,这个例子怎么能有不同的写法呢?我并不是说这是必要的或可取的,但它可以帮助我学习语言。