_fastcall, __fastcall
Remonter à Liste alphabétique des mots clés - Index
Catégorie
Modificateurs, Extensions des mots clés
Syntaxe
return-value _fastcall function-name(parm-list) return-value __fastcall function-name(parm-list)
Description
Utilisez le modificateur __fastcall pour déclarer des fonctions qui attendent des paramètres transmis dans les registres. Les trois premiers paramètres sont transmis (de gauche à droite) dans EAX, EDX et ECX, s'ils tiennent dans le registre. Les registres ne sont pas utilisés si le paramètre est de type virgule flottante ou struct.
- Remarque : Toutes les fonctions membres de classe VCL et fonctions membres de classe form doivent utiliser la convention __fastcall.
- Remarque : La fiche __fastcall (avec deux traits de soulignement) est la seule à être prise en charge par les compilateurs C++ améliorés par Clang.
Le compilateur traite cette convention d'appel comme un nouveau spécificateur de langage, dans les lignes de _cdecl et _pascal.
Les fonctions déclarées en utilisant _cdecl ou _pascal ne peuvent pas avoir aussi le modificateur _fastcall car elles utilisent la pile pour transmettre des paramètres. De même, le modificateur __fastcall ne peut pas être utilisé en même temps que _export.
Le compilateur préfixe le nom de fonction __fastcall avec le signe ("@"). Ce préfixe s'applique à la fois aux noms de fonctions C non substantypés et aux noms de fonctions C++ substantypés.
Pour implémenter __fastcall dans le style Microsoft C++, voir __msfastcall et __msreturn.
- Remarque : Le modificateur __fastcall est soumis au substantypage. Voir la description de l'option BCC32-VC.
Voir aussi
- Conventions d'appel multilangage
- Compilateur C++ (options de compilation)
- Modificateurs de fonctions
- BCC32