Erreur du compilateur C3162
'type' : un type référence qui a un destructeur ne peut pas être utilisé comme type de membre de données statique 'member'
Le Common Language Runtime ne peut pas savoir quand exécuter un destructeur défini par l’utilisateur lorsque la classe contient également une fonction membre statique.
Un destructeur ne sera jamais exécuté, sauf si l’objet est supprimé explicitement.
Pour plus d'informations, consultez
Exemple
L’exemple suivant génère l’erreur C3162.
// C3162.cpp
// compile with: /clr /c
ref struct A {
~A() { System::Console::WriteLine("in destructor"); }
static A i; // C3162
static A^ a = gcnew A; // OK
};
int main() {
A ^ a = gcnew A;
delete a;
}