我正在查看一些如下所示的代码:
for mut i in 2..points.len() {
// Do something
if some_condition {
i += 1;
}
}
Run Code Online (Sandbox Code Playgroud)
它编译并运行良好(看起来)。我的第一直觉是,将其作为循环会更好while。然后我开始想,这在 Rust 中一般是合法的吗?如果增量i超出范围会发生什么?我猜显然有麻烦......
我想知道在修改索引时是否存在任何问题。我假设该值i保持在范围内,但我有兴趣知道当它超出该范围时会发生什么。