【发布时间】:2011-09-05 02:31:14
【问题描述】:
当我使用[=] 表示我希望通过 lambda 中的值捕获所有局部变量时,这会导致函数中的 all 局部变量被复制,还是全部复制lambda 使用的局部变量?
所以,例如,如果我有:
vector<int> my_huge_vector(100000);
int my_measly_int;
some_function([=](int i){ return my_measly_int + i; });
是否会复制 my_huge_vector,即使我不在 lambda 中使用它?
【问题讨论】: