上級 › E0597: does not live long enough の原因と直し方 › パターン1
E0597: does not live long enough の原因と直し方
ブロックの中で作った値への参照を、そのブロックの外に持ち出そうとするとE0597エラーになります。
1 fn main() { 2 let outer = 10; 3 let r; 4 { 5 let inner = 5; 6 r = ______; ^ 7 } 8 println!("{}", r); 9 }
error[E0597]: `inner` does not live long enough
空欄を埋めて実行を通す
innerはブロックを抜けると破棄されます。破棄された後の参照を使おうとするとE0597エラーになります。
次の問題