Partager via


Erreur du compilateur C2452

'type' : type source non valide pour safe_cast

Type source pour safe_cast n’a pas été valide. Par exemple, tous les types d’une safe_cast opération doivent être des types CLR.

L’exemple suivant génère l’erreur C2452 :

// C2452.cpp
// compile with: /clr

struct A {};
struct B : public A {};

ref struct C {};
ref struct D : public C{};

int main() {
   A a;
   safe_cast<B*>(&a);   // C2452

   // OK
   C ^ c = gcnew C;
   safe_cast<D^>(c);
}