Sdílet prostřednictvím


Chyba kompilátoru C3495

'var': Zachycení lambda musí mít automatickou dobu trvání úložiště.

Poznámky

Nelze zachytit proměnnou, která nemá automatickou dobu trvání úložiště, například proměnnou, která je označena static nebo extern.

Oprava této chyby

  • Nepředávejte static do seznamu zachycení výrazu lambda ani extern proměnnou.

Příklad

Následující příklad generuje C3495, protože static proměnná n se zobrazí v seznamu zachycení výrazu lambda:

// C3495.cpp

int main()
{
   static int n = 66;
   [&n]() { return n; }(); // C3495
}

Viz také

Výrazy lambda