
Hi Arkadiy, Arkadiy Vertleyb ha escrito: [...]
As far as Lambda is concerned, Boost.Function can abstract you from the functor type (although at the expence of some overhead):
std::set<int, boost::function<bool(int)> > s(_1 < _2);
Yep, this has been previously discussed. Three problems here: 1) boost::function adds an extra indirection penalty. 2) Having to provide the function at iintialization time is cumbersome. 3) some valuable type info is lost. To continue with the std::set example, set<T,boost::function<bool(const T&,const T&,)> flattens out every possible lambda expression we might plug in. This might not be desirable. Besides, I think such a static lambda library could be useful for more far-fetched purposes, along the line of enriching the code-producing capabilities of MPL. Joaquín M López Muñoz Telefónica, Investigación y Desarrollo