Я недавно начал использовать boost lambda и подумал, что попробую использовать его там, где это будет / должно облегчить чтение.
У меня есть код, подобный следующему
std::vector< X * > v;
for ( int i = 0 ; i < 20 ; ++i )
v.push_back( new X() );
и позже, чтобы удалить его ...
std::for_each( v.begin(), v.end(), boost::lamda::delete_ptr() );
Что аккуратно убирает.
Тем не менее, я думал, что мне нужно "лямбда-зинг" для заполнения вектора с помощью лямбды ... Вот тогда начался фейерверк ...
Я пытался ..
std::generate_n( v.begin(), 20, _1 = new X() );
но это породило всевозможные ошибки компилятора.
Любые идеи, которые являются лучшим "лямбда" способом для достижения этого.
Thx
Mark.