Heyho,
ich habe in einem Tutorial mal gelesen, virtuelle Methoden (== mit virtual deklarierte Methoden) seien langsam.
1. "Stimmt das?" Inwieweit ist eine mit virtual deklarierte Methode langsamer als eine
-- a) nicht überschreibbare Methode oder
-- b) abstrakte Methode?
2. Ich entwickle derzeit eine Ingame-GUI. Diese sollte so anpassungsfähig wie möglich sein, daher erben alle GUI-Objekte von der GUIObject-Klasse, welche mit einigen abstrakten und virtuellen Methoden die nötigen Basisfunktionen zur Verfügung stellt. Nun stellt sich mir die Frage, inwieweit auch die Standardobjekte ("Window", "Button", ...) vererbbar sein sollten; grundsätzlich würde ich sagen "vollständig", aber dafür müsste ich sämtliche objektlokalen Methoden als virtuell deklarieren - damit man auch wirklich alles überschreiben und/oder modifizieren kann. Meine Frage ist, wie es hier mit dem Kosten/Nutzen-Verhältnis aussieht; rechnet sich das noch trotz geringfügigem(?) Performanceverlust?
Moderiert von Christian S.: Topic aus C# - Die Sprache verschoben am Do 10.01.2008 um 21:21