【发布时间】:2021-09-10 12:57:53
【问题描述】:
我遇到了一些使用Vec::get 无法理解的输出。代码如下:
fn main() {
let command = [('G', 'H'), ('H', '5')];
for i in 0..3 {
print!(" {} ", i);
println!("{:?}", command.get(i));
}
}
输出是
0 Some(('G', 'H'))
1 Some(('H', '5'))
2 None
我以前涉足过 Haskell,我的意思是看了一个教程网站 10 分钟然后跑回 C++,但我记得读过一些关于 Haskell 的 Some 和 None 的内容。我很惊讶在 Rust 中看到这一点。有人可以解释为什么.get() 返回Some 或None?
【问题讨论】: