Beispielanwendung für boost::bind



  • Hat jemand in seinen Projekten schonmal boost::bind benutzt? Mir fällt nichts ein, wozu mn das brauchen könnte.



  • in der boost::bind Doku sind doch zahlreiche Beispiele. Ansonsten habe ich das immer im Zusammenhand mit boost::function oder boost::signal benutzt um Memberfunktionen zusammenzubinden

    #include <boost/bind.hpp>
    #include <boost/signal.hpp>
    #include <iostream>
    
    struct base {
      virtual ~base() { }
      virtual void bar() =0;
    };
    
    class foo : public base {
      int i;
    public:
      foo(int n) : i(n) { }
      void bar() { std::cout << i << std::endl; }
      void out(int j) { std::cout << i+j << std::endl; }
    };
    
    int main() {
      foo f(10);
      boost::signal<void ()> sig;
      sig.connect(boost::bind(&base::bar,&f));
      sig();
      sig.connect(boost::bind(&foo::out,&f,10));
      sig();
    }
    


  • Dier Beispiele in der Doku hab ich auch gesehen, mir ist aber nichts eingefallen, wozu man das brauchen könnte.


Log in to reply