包裹在 lambda 中的 lambda 的效率是多少
What is the efficiency of lambdas wrapped inside lambdas?
>假设我正在递归目录并且我有一堆过滤器
- 如果文件与此字符串匹配
- 如果目录与该字符串匹配
- 排除这些文件扩展名
- 如果您曾经点击过目录 X 则排除
- 等
每个文件有多个选项可以在此处检查,并在功能上将它们用作过滤器。我可以将打开的每个选项转换为 lambda,然后应用 lambda 列表以查看我是否包含或排除某个文件。我还可以将 lambda 相互包装,最终得到一个返回真或假的 lambda。我已经多次遇到这种模式的可能性,但我不知道正确的答案是什么。为了方便起见,我通常选择列出lambda。
它们应该与执行相同工作的手写函数对象一样高效,但键入更少。 编译器不需要任何非常神奇的东西来实现lambda,它们只需要实现一个定义了operator()
的唯一命名类,并为任何捕获的变量声明数据成员。
相关文章:
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 可组合的lambda/std::函数与std::可选
- 复制列表初始化的隐式转换的等级是多少
- while循环中while循环的时间复杂度是多少
- C++Boost Asio Pool线程,带有lambda函数和传递引用变量
- 如何建立使用模板函数的lambda函数的尾部返回类型
- 如何检查一个c++字符串中有多少相同的字符/数字
- C++有多少类型的循环
- 如何将lambda作为模板类的成员函数参数
- C++从其他 constexpr 创建 lambda 不能按顺序执行 Constexpr
- 在 lambda 捕获中声明的变量的类型推导
- 求出有多少个数字是完美平方,而sqrt()是L,R范围内的素数
- 我可以将调用类的"this"传递给 lambda 函数吗?
- 为什么lambda在clang上崩溃而不是在gcc上崩溃
- 模板函数指针和lambda
- 两组使用lambda函数的大括号
- 应该向C++Lambda传递多少个参数
- 包裹在 lambda 中的 lambda 的效率是多少
- C++11 lambda捕获实际捕获了多少
- c++ lambda表达式的生命周期是多少?