我在std::for_each
调用中创建了lambda表达式。lambda表达式中的return语句
在这里面有像这样的代码,但我已经建立的错误告诉我,
error: expected primary-expression before ‘return’ error: expected `]' before ‘return’
在我脑子里,我觉得boost-lambda
主要与仿函数,这样以来return
声明它是不是这样的,称它不起作用。
你知道它是什么以及如何解决它吗?
感谢 AFG
namespace bl = boost::lambda; int a, b; bl::var_type::type a_(bl::var(a)); bl::var_type::type b_(bl::var(b)); std::for_each(v.begin(), v.end(), ( // ..do stuff here if_( a_ > _b_) [ std::cout << _1, return ] ));
其实他最好不要在这里使用lambdas,查看我的答案。 – 2012-12-03 04:43:04