在C++中优雅地移植lambda表达式

Elegant porting of lambda expressions in C++

本文关键字:lambda 表达式 C++      更新时间:2023-10-16

由于lambda表达式需要GCC版本>4.4:将包含两个带引用绑定变量的lambda表达式的代码移植到C++0x之前的代码的最优雅或最快(但又不太"脏")的方法是什么?

可以使用模板/宏以半自动化的方式完成这项工作吗?

也许您应该看看boost::lambda。这应该是你想要的。

(免责声明:我正在链接到我自己的网站。)

大约一年前,我在一篇博客文章中放了一些有用的宏。我不知道它有多便携,而且非常有限。但对于简单的表达式来说,它效果很好。

注意,我自己并没有发现它有多大用处,所以它不可能那么好:-)

sort(vs.begin(), vs.end(),
YALM(bool,vector<int>&,vector<int>&,return l.size() < r.size()  )
);