Kompilatorfel C3480

Var: en lambda-avbildningsvariabel måste komma från ett omfång för en omslutande funktion

Anmärkningar

Lambda-avbildningsvariabeln kommer inte från ett omfång för en omslutande funktion.

Så här åtgärdar du det här felet

  • Ta bort variabeln från samlingslistan för lambda-uttrycket.

Example

I följande exempel genereras C3480 eftersom variabeln global inte kommer från ett omfång för en omslutande funktion:

// C3480a.cpp

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

Följande exempel löser C3480 genom att ta bort variabeln global från samlingslistan för lambda-uttrycket:

// C3480b.cpp

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

Se även

Lambda-uttryck