Поделиться через


Ошибка компилятора C3495

var : передаваемый параметр лямбда-выражения должен иметь длительность автоматического хранения

Вы не можете передавать переменную, которая не поддерживает автоматическую длительность хранения, например переменную, помеченную как static или extern.

Исправление ошибки

  • Не передавайте переменную по static или extern в список передаваемых параметров лямбда-выражения.

Пример

В следующем примере возникает ошибка C3495, так как в списке передаваемых параметров лямбда-выражения присутствует переменная staticn .

// C3495.cpp

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

См. также

Лямбда-выражения