sigc::mem_fun



  • hi, kann mir jemand mal die funktion ("sigc::mem_fun") erklären -> was macht die funktion? hab zwar bei google was gefunden aber nix mitdem ich was anfangen könnte -nur irgendwelche komischen template definitionen usw... o.0



  • Damit erstellt man ein Callback (Functor) Objekt aus einer Methode und einem Objekt für die Ereignisse in GTKmm.

    z.b. hast du folgende Klasse:

    class Foo{
    public:
      void on_button_click();
    };
    

    dann kannst du dann z.b. damit ein Callback Objekt für einen click auf einen button erstellen und übergeben.

    Foo f;
    button.signal_clicked().connect(sigc::mem_func(f,&Foo::on_button_click));
    

    Hier ist noch etwas über Signale in GTKmm http://gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/apb.html

    BR



  • Habe das Thema hier passend zu einem Anliegen von mir gefunden.

    Angenommen on_button_click() ist eine Funktion mit Parameter also etwa so

    on_button_click(void* ptr)
    

    wie wird das dann mit dem Parameter dort übergeben.


Anmelden zum Antworten