
I'm still a novice with bind but I think you have to bind twice: #include <iostream> #include <functional> #include <algorithm> #include <boost/bind.hpp> using std::cout; using std::endl; using std::equal_to; class A { int i_; public: int test() {return i_;} }; class B { A _a; public: A& getA() {return _a;} }; int main() { B b; cout << (1 == boost::bind(&A::test, boost::bind(&B::getA, &b))()) << endl; return 0; } On Wed, Mar 4, 2009 at 2:33 PM, Archie14 <admin@tradeplatform.us> wrote:
I cannot figure out how to use boost::bind in following scenario:
class A { int i_; public: int test() {return i;} };
class B { A _a; public: A& getA() {return _a;} }
bool testbind() { B b;
// here I am trying to find out if b.getA().test() equals 1 // I understand that B::getA::test is incorrect, and that's my question- // how to use bind here? return (boost::bind (&B::getA::test, b) ==1); }
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- Kevin