不可能在头文件中使用带范围的lambda吗?

时间:2016-01-11 10:00:00

标签: c++ lambda range language-lawyer

Ranges-v3提案允许我们编写类似

的代码
auto f () { return range () | view::transform ([] (auto x) { return x *2; }); }

这很酷。但我想由于odr,以可重复使用的方式(即在标题中)使用这些代码是不可能的。更糟糕的是,在每个cpp文件中,此类函数的结果类型将不同,从而导致链接器错误。唯一的方法是在标题中使用范围来编写老式的仿函数类或者我错过了什么?

0 个答案:

没有答案