AI动态
AI基础
AI大模型
AI智能体
AI应用
AI编程
AI安全
AI学院
网安动态
安全运维
网站防护
软件安全
渗透测试
拒绝服务
漏洞挖掘
安全学院
区块动态
区块基础
智能合约
DeFi金融
区块开发
区块安全
区块学院
最新发表
最新回复
我的帖子
资讯
电脑
手机
运维
编程
教程
导读
设计中心
2018-3-30 13:00 |来自: 互联网 443 0
Lambda 表达式是在 C 11 中加入的 C 特性。这篇文章中我们将看到如何用 Lambda 表达式来简化 Qt 代码。Lambda 很强大,但也要小心它带来的陷阱。
首先,什么是 Labmda 表达式?
Lambda 表达式是在某个函数中直接定义的匿名函数。它可以用于任何需要传递函数指针的地方。
Lambda 表达式的语法如下:
现在先忽略 “获取变量” 这部分。下面是一个简单的 Lambda,用于递增一个数:
我们可以把这个 Lambda 用于像std::transform()这样的函数,来为 vector 的每一个元素增值:
打印结果:
Lambda 表达式可以通过 “获取” 来使用当前作用域中的变量。下面是用 Lambda 来对 vector 求和的一个示例。
你可以看到,我们获取了本地变量 sum,所以可以在 Lambda 内部使用它。sum 加了前缀
黑名单|存档|手机版|网站地图|免责条款|法律声明|隐私保护|HACKBASE
GMT+8, 2026-6-15 19:50
Powered by Discuz!