c++ - How to return a lambda function? -
for example, can define lambda function as
auto f = [](double value) {double ratio = 100; homecoming value * ratio;}
now want generate function ratio argument , homecoming lambda function like
auto makelambda(double ratio) { homecoming [=](double value) {return value * ratio;}; }
how it?
with c++14 function homecoming type deduction, should work.
in c++11, define lambda (which can deduce homecoming type), rather function (which can't):
auto makelambda = [](double ratio) { homecoming [=](double value) {return value * ratio;}; };
as noted in comments, farther wrapped, if particularly want function:
auto makelambdafn(double ratio) -> decltype(makelambda(ratio)) { homecoming makelambda(ratio); }
c++ c++11 lambda
No comments:
Post a Comment