내 std::for_each
호출 내에서 람다 식을 만들었습니다. 그것에서람다 식의 return 문
이 같은 코드가있다,하지만 난 내 머리에
error: expected primary-expression before ‘return’ error: expected `]' before ‘return’
내가 boost-lambda
이 펑 주로 작동하는지 생각 말해 오류를 구축, 그래서 return
문 이후 그렇게하지 않습니다 부르면 작동하지 않습니다.
당신은 그것이 무엇인지 어떻게 고쳐야하는지 알고 있습니까?
덕분에 당신은 람다 식 내부 return
명령을 사용할 수 없습니다
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 ] ));
사실 그는 여기에 람다를 사용하지 않는 것이 좋습니다. 내 대답을 확인하십시오. –