Freigeben über


Funktionstypen

Aktualisiert: November 2007

Es gibt zwei Typen von Funktionen. Eine Funktion, die einen Stapelrahmen erfordert, wird als Rahmenfunktion bezeichnet. Eine Funktion, die keinen Stapelrahmen erfordert, wird als Endfunktion bezeichnet.

Eine Rahmenfunktion ist eine Funktion, die Stapelspeicher zuweist, andere Funktionen aufruft, nicht flüchtige Register speichert oder eine Ausnahmebehandlung verwendet. Außerdem erfordert sie einen Funktionstabelleneintrag. Eine Rahmenfunktion benötigt einen Prolog und einen Epilog. Eine Rahmenfunktion kann Stapelspeicher dynamisch zuordnen und einen Framezeiger verwenden. Ihr steht der volle Funktionsumfang dieses Aufrufstandards zur Verfügung.

Wenn eine Rahmenfunktion keine andere Funktion aufruft, muss sie nicht den Stapel ausrichten (siehe den Abschnitt Stapelreservierung).

Eine Endfunktion benötigt keinen Funktionstabelleneintrag. Sie kann keine Funktionen aufrufen, keinen Speicherplatz zuweisen und keine nicht flüchtigen Register speichern. Sie kann bei der Ausführung einen Stapel unausgerichtet verlassen.

Siehe auch

Referenz

Verwendung von Stapeln