Hallo Experten
Derzeit arbeite ich an einem kleinen Chat um mich in die OOP mit c++ einzuarbeiten.
Zur Umsetzung der GUI verwende ich WxWidgets.
Bislang habe ich meine Projekte immer nach dem Motto:
Code like hell and see what happens aufgebaut.
Das hat auch so immer wunderbar funktioniert, nur will ich nun auch mal meinen Stil verbessern
Zum Projekt:
Erstmal habe ich ein Klasse erstellt, die von mir oft verwendete Socketmethoden vereint.
Dann habe ich eine Klasse implementiert, die diese Klasse nutzt um Chatmethoden zur Verfügung zu stellen und die Socketverbindung zu verwalten.
Außerdem gibt es noch die GUI-klasse.
Das Problem ist jetzt, dass ich nicht weiß wie ich GUI und Chatclienten sauber verbinden soll.
Einerseits braucht die GUI ein Object der Chatclientklasse um z.b.: Text zu versenden.
Andererseits braucht das Object der Chatclientklasse auch das Object der GUI-klasse um z.b.: empfangenen Text darstellen zu können.
Bislang habe ich es so gelöst, dass jede Klasse einen Pointer der jeweils anderen Klasse besitzt.
Dies ist jedoch nur durch Forward Deklaration möglich.
Das muss doch auch eleganter zu lösen sein?!
Wie würdet ihr das Problem lösen
MFG
JavaJoe
Derzeit arbeite ich an einem kleinen Chat um mich in die OOP mit c++ einzuarbeiten.
Zur Umsetzung der GUI verwende ich WxWidgets.
Bislang habe ich meine Projekte immer nach dem Motto:
Code like hell and see what happens aufgebaut.
Das hat auch so immer wunderbar funktioniert, nur will ich nun auch mal meinen Stil verbessern
Zum Projekt:
Erstmal habe ich ein Klasse erstellt, die von mir oft verwendete Socketmethoden vereint.
Dann habe ich eine Klasse implementiert, die diese Klasse nutzt um Chatmethoden zur Verfügung zu stellen und die Socketverbindung zu verwalten.
Außerdem gibt es noch die GUI-klasse.
Das Problem ist jetzt, dass ich nicht weiß wie ich GUI und Chatclienten sauber verbinden soll.
Einerseits braucht die GUI ein Object der Chatclientklasse um z.b.: Text zu versenden.
Andererseits braucht das Object der Chatclientklasse auch das Object der GUI-klasse um z.b.: empfangenen Text darstellen zu können.
Bislang habe ich es so gelöst, dass jede Klasse einen Pointer der jeweils anderen Klasse besitzt.
Dies ist jedoch nur durch Forward Deklaration möglich.
Das muss doch auch eleganter zu lösen sein?!
Wie würdet ihr das Problem lösen
MFG
JavaJoe