Ian wrote:
Boosters:
Try as I might, I cannot figure a way of converting the following code snippet to use std::for_each with boost::lamdba. Any ideas?
unsigned int table[1000]; for ( unsigned int* it = table_; it != table_ + (sizeof(table_) / sizeof(unsigned int)); ++i ) { *it = ((int)it % 3); }
The pointer to int cast is the killer, the docs mention the ret<> template briefly, but it does not seem to help...
Use the cast objects: ll_static_cast<int>(_1) not tested, but it might work: namespace l = boost::lambda; // use this if You wanna get happy! std::for_each(begin, end, l::_1 = l::ll_static_cast<int>(_1) % 3); Markus -- Build your own Expression Template Library with Daixtrose! Visit http://daixtrose.sourceforge.net/