FreeBASIC マニュアルのトップに戻る

FreeBASIC FASTCALL

目次→言語文書→その他→手続き__FASTCALL←オリジナル・サイト

__FASTCALL 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい

←リンク元に戻る プログラム開発関連に戻る

手続き宣言で Fastcall 呼び出し規約を指定します。

構文:
declare Sub name __Fastcall [Overload] [Alias "alias"] ( parameters )
declare Function name __Fastcall [Overload] [Alias "alias"] ( parameters ) [ Byref ] as return_type

Sub name [__Fastcall] [Overload] [Alias "alias"] ( parameters )
Function name [__Fastcall] [Overload] [Alias "alias"] ( parameters ) [ Byref ] as return_type

記述:
Fastcall は、x86 ターゲットの呼び出し規則で、最初と 2 番目の整数引数が、スタックではなく、ECXEDX レジスタにそれぞれ渡されます。
他のすべての引数は、右から左に渡され、呼び出し先はスタックを消去します (Stdcall と同様)。

Fastcall は、宣言と定義の両方で指定できます。
手続き定義に宣言が (呼び出し規約が明示的またはデフォルトで)あり、その定義で呼び出し規約が明示的に指定されていない場合、呼び出し規約は宣言によって暗示されます。

注: 非静的メンバー手続きの extern "c++" ブロック内の win32 x86 での既定の呼び出し規則は、Thiscall です。

例:
Extern "c++"
    Declare Function Example __Fastcall (param1 As Long, param2 As Byte, param3 As LongInt, param4 As String) As Integer
End Extern

バージョン:
QBからの違い:
参照:
手続き に戻る
←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2022-12-05 08:44:28
日本語翻訳:WATANABE Makoto、原文著作者:fxm

ホームページのトップに戻る

表示-非営利-継承