
Hi All I believe boost.bind has the capability to look through pointers and smart pointers to transparently process the pointed-to objects. Does boost.lambda.bind also have this capability? I.e., this bit of code (and I am specifically using boost 1.37 for this btw) #include <boost/lambda/lambda.hpp> #include <boost/lambda/bind.hpp> #include <boost/lambda/construct.hpp> #include <boost/shared_ptr.hpp> #include <algorithm> #include <vector> struct A { A( int ); void f( ); }; int main( ) { using namespace boost::lambda; std::vector< A * > pv; std::vector< boost::shared_ptr< A > > sv; std::for_each( pv.begin( ), pv.end( ), bind( &A::f, _1 ) ); std::for_each( sv.begin( ), sv.end( ), bind( &A::f, _1 ) ); // error here. } Thanks, - Rob.