Teilen über


Compilerfehler C2450

switch-Ausdruck vom Typ „type“ ist nicht zulässig

Bemerkungen

Der switch Ausdruck wird als ungültiger Typ ausgewertet. Sie muss einen ganzzahligen Typ oder einen Klassentyp mit eindeutiger Konvertierung in einen ganzzahligen Typ auswerten. Wenn er einen benutzerdefinierten Typ auswertet, müssen Sie einen Konvertierungsoperator angeben.

Example

Im folgenden Beispiel wird C2450 generiert:

// C2450.cpp
class X
{
public:
   int i;
} x;

class Y
{
public:
   int i;
   operator int() { return i; }   // conversion operator
} y;

int main()
{
   switch ( x )
   {   // C2450, x is not type int
       // try the following line instead
       // switch ( y ) {
       default:  ;
   }
}