[C++] EventHandling wie in Java, ist das Möglich?

... komplette Frage anzeigen

2 Antworten

Wenn Du es selbst programmierst, ist das selbstverständlich möglich. Stichworte: Funktionszeiger, Lambda-Ausdrücke, std::function. Du musst nur auf die Thread-Entkopplung achten, da im Signalverarbeitungs-Koontext keine zeitaufwendigen Aktionen und keine Aktionen der Bedienoberfläche ausgeführt werden können.

Mit dem QT-Framework kannst Du auch die Signal/Slot-Mechanik verwenden.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von regex9
04.09.2016, 01:46

Bitte Qt, nicht QT. Qt-Entwickler mögen es nicht gern, mit der Abk. für Quicktime konfrontiert zu werden. 😝

1

Den letzten Teil habe ich leider noch nicht ganz verstanden, es ist umständlich geschrieben.

Aber sollte ein Observer-Pattern (https://sourcemaking.com/design_patterns/observer/cpp/3) für deine Ansprüche nicht ausreichen?

Ansonsten würde ich wie Mikkey das Signal-Slot-Konzept empfehlen. Entweder mithilfe einer externen Library, Qt oder selbst programmiert. Ab Qt5 und C++11 kannst du sogar Lambdas dafür verwenden: http://artandlogic.com/2013/09/qt-5-and-c11-lambdas-are-your-friend/

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?