Когда я использую [=]
, чтобы указать, что я хотел бы, чтобы все локальные переменные были захвачены значением в лямбда, это приведет ко всем локальным переменным в копируемой функции или только ко всем локальным переменным, которые используются лямбда?
Итак, например, если я:
vector<int> my_huge_vector(100000);
int my_measly_int;
some_function([=](int i){ return my_measly_int + i; });
Будет ли скопирован my_huge_vector, хотя я не использую его в лямбда?