2
私は何度も変更可能な変数の詳細を借りして、エラーなしでコンパイルこのコードを書いたが、The Rust Programming Languageによると、これはコンパイルできませんする必要があります複数の可変借用が同じ有効範囲内で可能なのはなぜですか?
fn main() {
let mut s = String::from("hello");
println!("{}", s);
test_three(&mut s);
println!("{}", s);
test_three(&mut s);
println!("{}", s);
}
fn test_three(st: &mut String) {
st.push('f');
}
は、これはバグですか、そこにありますRustの新機能ですか?
このようなものが「何度も変更可能な多くを借りることができない」、私は古いさびコンパイラで、数ヶ月前に類似したコードを書いて、私はエラーをコンパイルしました。 しかし、バージョン1.20で動作しています。 – mojtab23
@ mojtab23実際にはこれは新しいものではなく、Rust 1.0以来正常に動作するはずです。 [godbolt's rustc 1.0](https://rust.godbolt.org)との問題なくコンパイルされます。あなたが参照しているコードには、おそらく(一見して微妙であっても)かなりの違いがあります。 – ljedrz