Freigeben über


Compilerfehler C2396

'your_type::operator'type'' : CLR oder WinRT benutzerdefinierte Konvertierungsfunktion ist ungültig. Muss entweder von 'T^', 'T^%', 'T^&', 'T^&' konvertiert werden, wobei T = 'your_type'

Eine Konvertierungsfunktion in einem Windows-Runtime- oder verwalteten Typ wies nicht einmal einen Parameter auf, dessen Typ dem Typ entspricht, der die Konvertierungsfunktion aufweist.

Im folgenden Beispiel wird C2396 generiert und gezeigt, wie Sie diesen Fehler beheben:

// C2396.cpp
// compile with: /clr /c

ref struct Y {
   static operator int(char c);   // C2396

   // OK
   static operator int(Y^ hY);
   // or
   static operator Y^(char c);
};