次の方法で共有


コンパイラ エラー C3480

'var': ラムダ キャプチャ変数は、外側の関数スコープの変数である必要があります

ラムダ キャプチャ変数が外側の関数スコープの変数ではありません。

このエラーを解決するには

  • ラムダ式のキャプチャ リストから変数を削除します。

変数 global が外側の関数スコープではないため、次の例では C3480 が生成されます。

// C3480a.cpp

int global = 0;
int main()
{
   [&global] { global = 5; }(); // C3480
}

次の例では、ラムダ式のキャプチャ リストから変数 global を削除することによって C3480 を解決しています。

// C3480b.cpp

int global = 0;
int main()
{
   [] { global = 5; }();
}

関連項目

ラムダ式