Aracılığıyla paylaş


Derleyici Uyarısı (düzey 1) C4382

'type' oluşturma: __clrcall yıkıcı veya kopya oluşturucu içeren bir tür yalnızca /clr:pure modülünde yakalanabilir

Açıklamalar

/clr:pure derleyici seçeneği Visual Studio 2015'te kullanım dışıdır ve Visual Studio 2017'de desteklenmez.

/clr (/clr:pure değil) ile derlendiğinde, özel durum işleme yerel bir türdeki üye işlevlerinin __clrcall değil __cdecl olmasını bekler. Çağırma kuralı kullanan __clrcall üye işlevlerine sahip yerel türler /clr ile derlenmiş bir modülde yakalanamaz.

Özel durum /clr:pure ile derlenen bir modülde yakalanacaksa, bu uyarıyı yoksayabilirsiniz.

Daha fazla bilgi için bkz . /clr (Ortak Dil Çalışma Zamanı Derlemesi).

Örnek

Aşağıdaki örnek C4382 oluşturur.

// C4382.cpp
// compile with: /clr /W1 /c
struct S {
   __clrcall ~S() {}
};

struct T {
   ~T() {}
};

int main() {
   S s;
   throw s;   // C4382

   S * ps = &s;
   throw ps;   // OK

   T t;
   throw t;   // OK
}