v.push() で用いるために作成される可変借用が,実際に push() が呼び出される(v.len() の呼び出し後)までは「予約」として機能するみたいな話です
-
Show this thread
-
let tmp1 = &mut vec; let tmp2 = &vec; let tmp3 = Vec::len(tmp2); Vec::push(tmp1, tmp3); のとき,従来だと tmp2 の借用が違法(すでに可変借用が存在するため)だったのが,可変借用が「実際に使われる」までは共有借用を作成しても問題なくなるという変更
1 reply 6 retweets 7 likesShow this thread
これは従来の &mut とは異なる挙動なので, RFC2015 中では mut2 と表記されている
3:02 AM - 15 Dec 2017
0 replies
0 retweets
1 like
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.