c – Lambda捕获
发布时间:2020-12-16 10:44:41 所属栏目:百科 来源:网络整理
导读:我总是对lambda捕获感到困惑,我不知道变量是通过引用还是通过值捕获的.例如,如果我有[a]我不知道a是通过值还是通过ref捕获的. 我认为一个简单的方法就是通过例子.因此,让每个案例都有一个案例(如果有更多表达同一事物的方式,则更多): 捕获: 没什么 全部通
我总是对lambda捕获感到困惑,我不知道变量是通过引用还是通过值捕获的.例如,如果我有[a]我不知道a是通过值还是通过ref捕获的.
我认为一个简单的方法就是通过例子.因此,让每个案例都有一个案例(如果有更多表达同一事物的方式,则更多): 捕获: >没什么 让我们完全忽略这一点,因为那是另一袋蠕虫. 解决方法| Capture | Syntax | | --------------------------------------------- | ------------------ | | nothing | [] | | all by reference | [&] | | all by value | [=] | | r1,r2 by reference. Nothing else. | [&r1,&r2] | | v1,v2 by value. Nothing else. | [v1,v2] | | r1,r2 by reference. Rest by value. | [=,&r1,&r2] | | v1,v2 by value. Rest by reference. | [&,v2] | | r1,r2 by ref,v2 by value. Nothing else. | [v1,v2,&r2] | 规则很简单:以&开头,按引用捕获.仅限名称,按值捕获. 默认值:=全部按值,&全部参考.要从“所有”中排除的东西使用上面的简单规则. 完整规则可在cppreference上阅读. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- objective-c – 如何以不同的方式响应applicationWillResig
- UE4 用FFastXml解析Xml
- 最佳实践:在ruby中使用系统提供的或自定义异常的错误条件?
- 【VB.NET】大陆与台湾计算机术语对比
- xml中Node和Element的区别
- [深入剖析React Native]React Native Flexbox属性讲解
- SDL_image / C OpenGL程序:IMG_Load()生成模糊图像
- Vue.js如何优雅的进行form validation
- Xcode Project不会在iOS设备上运行
- c# – 使用getDirectories的UnauthorizedAccessException