上級 › E0597: does not live long enough の原因と直し方 › パターン3
E0597: does not live long enough の原因と直し方
ブロックの中で作った値への参照を、そのブロックの外に持ち出そうとするとE0597エラーになります。
1 fn main() { 2 let global_count = 0; 3 let r; 4 { 5 let local_count = 5; 6 r = _____________; ^ 7 } 8 println!("{}", r); 9 }
error[E0597]: `local_count` does not live long enough
空欄を埋めて実行を通す
ブロックの中だけで生きる変数への参照を外に持ち出すことは、ダングリング参照を防ぐために禁止されています。
次の問題