@Renegade123:
Das wär wohl auch ein Ansatz. Da ich aber nicht wahllos irgendwelche Einheiten einfüge, und auch der Benutzer sich während des Spiels keine Einheiten zusammen basteln kann, werd ich das ganze wohl nicht mehr ändern, zumal ich es ja jetzt alles schon so geschrieben hab.
Vielleicht werd ich das in meinem nächsten Projekt mal anders machen - jedenfalls ist es ein interessanter Ansatz. Danke dafür!
So ungefähr weiß ich schon, was eine virutelle Methode ist - zumindest, wofür ich sie verwende. Um eben z.B. die Funktion der Basisklasse virtual zu machen und sie dann in der abgeleiteten Klasse zu überschreiben. Wenn ich jetzt ein neues Objekt der abgeleiten Klasse erzeuge und in einem Zeiger der Basisklasse speichere (so wie ich das jetzt auch mache), dann wird die Funktion der abgeleiteten Klasse aufgerufen.
Ich hab aktuell auch eine Update-Methode und eine Render-Methode, allerdings sind die in CEinheit definiert, deswegen is die nicht virtual. Vielleicht wäre es wirklich sinnvoller, die virtual zu machen und jede Einheit (CFlugzeug, CFahrzeug) das Updaten und Rendern selbst zu überlassen. Allerdings sind viele Teile in Update für Flugzeuge und Fahrzeuge ja ident...