
Thanks for your help, but... boost::function<void (void)> pg = boost::bind((void(X::*)(int,int))&X::g, &x, a, b) ; Oups, with the correction same result, compilation failed, but not with the same first message error: " can't convert 'overloaded-function' in 'void (__thiscall X::* )(int,int)' " now? Could you give some feedbacks about the reason of the compilation failure? Is this due to some restrictions on VC++ 7.1? Thanks in advance. Best regards, Marc Viala mailto:mviala@acticm.com -----Message d'origine----- De : boost-users-bounces@lists.boost.org [mailto:boost-users-bounces@lists.boost.org] De la part de Rene Rivera Envoyé : lundi 23 janvier 2006 17:12 À : boost-users@lists.boost.org Objet : Re: [Boost-users] [Boost][Bind] How to bind template function member Marc Viala wrote:
Hi,
I would like to know how I can use boost::bind with template function member?
To explain my problem, you will find hereafter an example code that demonstrates it. In this code, when we try to bind the function member X::g the compiler failed with tons of error message.
Am I doing something wrong?
Best regards,
Marc Viala mailto:mviala@acticm.com
----------------------------------- Platform: VC++ 7.1 Boost 1.33.1
----------------------------------- #include <boost/bind.hpp> #include <boost/function.hpp>
struct X { template<typename A, typename B> void g(A& a, B& b) { std::cout << a << " " << b << '\n' ; }
void f(int& i) { std::cout << i << '\n'; } } ;
template<typename A, typename B> void e(A& a, B& b) { std::cout << a << " " << b << '\n' ; }
int main(int argc, char* argv[]) { int a = 10, b = 11 ; X x ; boost::function<void (void)> pe = boost::bind(&e<int,int>, a, b) ; // <- OK pe() ; boost::function<void (void)> pg = boost::bind(&X::g<int,int>, &x, a, b) ; // <- Don't compile?
Try... = boost::bind((void(X::*)(int,int))&X::g,&x,a,b) -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - Grafik/jabber.org _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users