上級 › already borrowed: BorrowMutError パニックの原因と直し方 › パターン4
already borrowed: BorrowMutError パニックの原因と直し方
RefCellは借用規則を実行時にチェックする仕組みです。
1 use std::cell::RefCell; 2 fn main() { 3 let state = RefCell::new(1); 4 let s1 = state.borrow_mut(); 5 _________ ^ 6 let s2 = state.borrow_mut(); 7 println!("{}", s2); 8 }
thread 'main' panicked at main.rs:6:20:
already borrowed: BorrowMutError
空欄を埋めて実行を通す
コンパイル時の借用チェックが効かない代わりに、RefCellは違反時に確実にパニックで知らせます。
次の問題