C++ Boost lambda::_1在C+中+;0x intmain() { std::向量v; v、 推回(1); v、 推回(3); v、 推回(2); std::for_each(v.begin()、v.end()、std::cout

C++ Boost lambda::_1在C+中+;0x intmain() { std::向量v; v、 推回(1); v、 推回(3); v、 推回(2); std::for_each(v.begin()、v.end()、std::cout,c++,boost,lambda,placeholder,c++11,C++,Boost,Lambda,Placeholder,C++11,在这种情况下不需要占位符,因为lambda捕获参数: int main() { std::vector<int> v; v.push_back(1); v.push_back(3); v.push_back(2); std::for_each(v.begin(), v.end(), std::cout << boost::lambda::_1 << "\n"); } STD::FuxEng.([Vix

在这种情况下不需要占位符,因为lambda捕获参数:

int main() 
{ 
    std::vector<int> v; 
    v.push_back(1); 
    v.push_back(3); 
    v.push_back(2); 

    std::for_each(v.begin(), v.end(), std::cout << boost::lambda::_1 << "\n");
} 

<代码> STD::FuxEng.([VixOn.],V.Enter),[](int x){STD::CUT考虑使用[],而不是[= ],因为您没有捕获任何东西。这将在以后尝试捕获变量时防止错误。
std::for_each(v.begin(), v.end(), [](int x){std::cout << x << "\n";});