带有模板参数的 C++0x lambda? [复制]

Posted

技术标签:

【中文标题】带有模板参数的 C++0x lambda? [复制]【英文标题】:C++0x lambdas with template parameters? [duplicate] 【发布时间】:2011-05-06 16:36:01 【问题描述】:

可能重复:Can lambda functions be templated?

是否可以使用带有模板参数的 c++0x lambda?例如:

template <typename T> [=](const T *x) 

我要做的是在类型列表(可变参数列表)上编写一个静态 for 循环,并且我想将当前类型作为参数传递给目标函子(或 lambda)的 operator () )。

【问题讨论】:

【参考方案1】:

这就是所谓的多态 lambda,我已经在那里问过了:Can lambda functions be templated?

不,这在 C++0x 中是不可能的。也许是下一个。

但是boost::phoenix 允许这样做,所以它可能是一个很好的解决方法。

【讨论】:

以上是关于带有模板参数的 C++0x lambda? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

带有 lambda 作为每个实例化的唯一默认参数的模板

带有模板参数的 Lambda 函数,而不是函数参数

C ++ lambda作为函数的模板参数不起作用

C++20:非类型模板参数中的非捕获 lambda

使用带有 lambda 函数指针的模板

C++0x 右值引用模板参数推导