Warum ist __cdecl standardmäßige Aufrufkonvention?
-
...und nicht __fastcall? Der einzige Vorteil von __cdecl ist doch, dass es Funktionen mit variablen Argumenten zulässt, die man aber ohnehin nicht allzu häufig einsetzt.
-
naja, ich überschreibe Funktionen des häufigeren...
Devil
-
@devil81: Was hat das damit zu tun?
-
Wenn du magst kannst du unter
Alt+F7 -> C/C++ -> Kategorie: Code Generation -> Aufruf-Konvention
das umstellen.
[ Dieser Beitrag wurde am 08.03.2003 um 23:16 Uhr von Nemesyzz editiert. ]
-
das weiß ich, aber warum ist __fastcall nicht standardmäßig voreingestellt?
-
Der 1. Parameter wird sowieso in einem Register übergeben, und da _fastcall NUR 2 Parameter in Register setzt, würde sich ein Geschwindigkeitsvorteil nur bei Funktionen mit 2 Parametern auswirken. Die Chance, dass eine Funktion aber 2 Parameter hat, kannst Du Dir selber ausrechnen. Ausserdem ist der Geschwindigkeitsvorteil eher vernachlässigbar, da auf die Variablen im Stack sehr schnell zugegriffen werden kann und bei den meisten Funktionen die Register eher für andere Variablen als gerade die Parameter benötigt werden.