【发布时间】:2017-10-18 12:12:23
【问题描述】:
我总是对 lambda 捕获感到困惑,我不知道变量是通过引用还是按值捕获的。例如,如果我有[a],我不知道a 是按值还是按引用捕获的。
我认为获得它的简单方法是通过示例。因此,让我们为每种情况使用一个(如果有更多表达同一事物的方式,则更多):
捕获:
- 什么都没有
- 全部参考
- 全部按值
-
r1,r2引用。没有别的了。 -
v1,v2按值。没有别的了。 -
r1,r2引用。按价值休息。 -
v1,v2按值。参考休息。 -
r1、r2按引用、v1、v2按值。没有别的了。
让我们完全忽略this,因为那是另一包蠕虫。
【问题讨论】: