Aracılığıyla paylaş


__fastcall

Microsoft özel

__Fastcall çağırma işlevi bağımsız değişkenlerinin kayıtlarına, mümkün olduğunda iletilmek üzere olduğunu belirtir.Aşağıdaki liste, bu çağrı kuralı uygulaması gösterir.

Öge

Uygulama

Bağımsız değişken geçirme sırası

İlk iki dword ya da daha küçük bağımsız ecx ve edx Yazmaçları iletilir; tüm diğer bağımsız değişkenler sağa sola geçirilir.

Yığın bakım sorumluluğu

İşlev POP yığından bağımsız olarak adlandırılır.

Ad düzenleme kuralı

At işareti (@) adlarını konduğundan; bir Design View'e son bayt sayısını (ondalık) parametresinde arkasından işareti listesi adlarını ekli.

Büyük/küçük harf çevirme kuralı

Büyük/küçük harf çevirisi gerçekleştirilir.

[!NOT]

Derleyici gelecekteki sürümleri farklı kayıtları parametreleri depolamak için kullanabilirsiniz.

Kullanarak /Gr derleyici seçeneği neden olan her işlev fastcall işlev çakışan öznitelik ile bildirilmiş veya işlevin adını kaldırılmadığı sürece derlemeye modülünde main.

Itanium işlemci ailesi (IPF) ve AMD64 makinelerde __fastcall kabul edilir ve derleyici tarafından; göz ardı IPF yongası üzerinde kural gereği kayıttaki Parametreler iletilir.

Tanımlı çıkış satır sonu, işlevi ise, statik olmayan sınıf işlevleri için Arama kuralı değiştirici satır sonu tanımında belirtilecek yok.Diğer bir deyişle, sınıf statik olmayan üye yöntemleri için tanımı noktasında bildirimi sırasında belirtilen çağrı kuralı kabul edilir.Bu sınıf tanımı verilen,

struct CMyClass {
   void __fastcall mymethod();
};

Bu

void CMyClass::mymethod() { return; }

şuna eşdeğerdir

void __fastcall CMyClass::mymethod() { return; }

Örnek

Aşağıdaki örnekte işlevin adlı DeleteAggrWrapper kayıtlarına geçirilen bağımsız değişkenler:

// Example of the __fastcall keyword
#define FASTCALL    __fastcall
   
void FASTCALL DeleteAggrWrapper(void* pWrapper);
// Example of the __ fastcall keyword on function pointer
typedef BOOL (__fastcall *funcname_ptr)(void * arg1, const char * arg2, DWORD flags, ...);

Ayrıca bkz.

Başvuru

Bağımsız değişken geçirerek ve adlandırma kuralları

C++ anahtar sözcükler