SDL Renderer



  • Hallo,

    wenn ich mir in einer Klasse A den SDL renderer erzeuge, wie kann ich den renderer dann in anderen Klassen aufrufen? Bisher habe ich einen getter dafür und habe dann in jeder Klasse, wo ich den renderer benötige eine Instanz von der Klasse A und ruf darauf den getter auf. Wie könnte ich das besser lösen?



  • Was hälst du von der Idee, wenn jede Klasse, die den Renderer benötigt, diesen im Konstruktor reingereicht bekommt und dann in einer privaten Variable speichert.

    Würde man ein IOC-Container verwenden, dann würde man per Konstruktorinjection diese Aufgabe realisieren. Dieser würde dann die eine Render-Instanz kennen und sie allen Objekten zum bauen geben.



  • Ich würde bei der Version bleiben, die du hast - oder wo siehst du da Nachteile?

    Der neue Vorschlag hat meiner Meinung nach ein Problem, wenn keiner mehr den Renderer zerstören kann, weil er nicht sicher sein kann ob jemand anderes noch damit arbeiten will.