Code Fix

上級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

空欄を埋めて実行を通す

広告
広告スロット(未設定)

E0597: does not live long enough の原因と直し方

参照先の値は、参照そのものと同じかそれより長く生存していなければなりません。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)