Ошибка компилятора C3480
"переменная": передаваемая переменная в лямбда-выражении должна быть из внешней области видимости функции
Передаваемая переменная в лямбда-выражении не относится к внешней области видимости функции.
Исправление ошибки
- Удалите переменную из списка передаваемых параметров в лямбда-выражении.
Примеры
Приведенный ниже пример вызывает ошибку C3480, так как переменная global
не относится к внешней области видимости функции.
// C3480a.cpp
int global = 0;
int main()
{
[&global] { global = 5; }(); // C3480
}
В приведенном ниже примере ошибка C3480 устраняется путем удаления переменной global
из списка передачи лямбда-выражения.
// C3480b.cpp
int global = 0;
int main()
{
[] { global = 5; }();
}