Dravere schrieb:
SeppJ schrieb:
Es könnte bei mir aber auch eines Tages als Einheit Telefone, Philosophie oder die Farbe Blau hinzukommen.
Ehm, also irgendwo muss es doch gemeinsame Nenner geben, sonst kann es deine Engine gar nicht behandeln
Naja, da kann ich grundsätzlich jetzt nur noch als zusätzlicher Tipp geben: Habe keine Angst vor virutellen Funktionen und Funktionszeiger wegen der Performance. Die kann man in dem Fall getrost vernachlässigen. Es gilt hier das 80-20 Prinzip. 80% der Zeit wird in 20% des Codes verbracht. Zudem optimiere erst richtig, wenn du mit einem Profiler drüber bist. Vorausüberlegungen schaden natürlich nicht, aber wenn man dann anfängt virtuelle Funktionen im Voraus auszuschliessen, dann geht man definitiv zu weit
Grüssli
Ja, war vielleicht ein bisschen übertrieben :D, natürlich gibt es einen gemeinsamen Nenner, an manchen Stellen sind bei einigen Sachen aber tatsächlich Sonderbehandlungen angesagt. Insofern tendiere ich auch eher zu der zweiten Möglichkeit bei meiner Ursprungsfrage, weil manchmal dann doch an unvorhergesehenen Stellen eingegriffen werden muss.
Ich werde das mit der Performance der virtuellen Funktionen noch mal am halbfertigen Projekt testen, damit würde einiges einfacher sein. Ich hatte es im vorhinein schon mal probiert, aber meine Testfunktionen hatten deutlich weniger Anweisungen als die fertigen Funktionen, insofern war der Overhead relativ größer und die Performance entsprechend schwach. Ich hatte mich damals aus diesem Grund gegen virtuelle Funktionen entschieden.