Ich weis nicht, ob das jetzt die beste Lösung oder so ist, aber in meinem
FTP-Programm hab ich auch ein Log schreiben lassen.
Da hat jede Klasse (okay, es war nur eine) ein Log-Event angeboten, die was zu sagen hatte. In dem Eventhandler kann dann die Nachricht z.B. in eine datei oder in ein Richedit geschrieben werden.
In deinem Fall würde also die Logging-Klasse Eventhandler bereitstellen, die mit den verschiedenen Klassen verknüft sind.
Vorteil: Man kann das Event behalndeln oder auch nicht, man muss der Klasse im Konstruktor keine Logging-Klasse übergeben. (Und die Klasse braucht nichts über die Logging-Klasse zu wissen)
Ist aber nur so ne Idee