Aracılığıyla paylaş


__thiscall

Microsoft özel

__thiscall Çağırma üye işlevleri kullanıldığından ve bağımsız değişken kullanmayın C++ üye işlevleri tarafından kullanılan varsayılan çağrı kuralı.Altında __thiscall, Aranan olanaksız yığınını temizler vararg fonksiyonlar.Bağımsız kalan yığın üzerinde sağdan sola, ile this ecx kaydı aracılığıyla ve yığın x 86 mimarisi üzerinde değil, geçirilen işaretçi.

Kullanmak için bir neden __thiscall olan üye işlevleri kullanmak sınıflarda ise __clrcall varsayılan olarak.Bu durumda, kullanabileceğiniz __thiscall tek tek üye işlevler çağrılabilir doğal kodundan yapmak için.

İle derlerken /clr: saf, tüm işlevler ve işlev işaretçileri olan __clrcall aksi belirtilmediği sürece.

Visual C++ 2005 önce sürümlerde çağırma thiscall açıkça bir programda nedeni belirlenemedi thiscall bir anahtar sözcük değildi.

varargüye işlevleri kullanmak __cdecl çağırma.Tüm fonksiyon bağımsız değişkenleri ile yığında itilir this işaretçi yığına son yerleştirilen

Bu çağrı kuralı yalnızca C++ için uygulandığından hiçbir c ad deseni düzeni vardır.

Itanium işlemci ailesi (IPF) üzerinde ve x64 makineleri, __thiscall 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.

Örnek

// thiscall_cc.cpp
// compile with: /c /clr:oldSyntax
struct CMyClass {
   void __thiscall mymethod();
   void __clrcall mymethod2();
};

Ayrıca bkz.

Başvuru

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