我在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