Erreur du compilateur C7742

Identificateur : une déclaration anticipée d’énumération doit utiliser un identificateur simple

Remarques

La norme C++ n’autorise pas la déclaration d’une énumération opaque à l’aide d’un id qualifié. Une déclaration d’énumération opaque spécifie le nom et le type sous-jacent, mais ne répertorie pas les énumérateurs ou leurs valeurs.

Example

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

// C7742.cpp
class MyClass
{ 
public: 
    enum MyEnum
    { 
        e1, 
        e2 
    }; 
}; 
  
enum MyClass::MyEnum;   // C7742

Pour corriger cette erreur, supprimez la déclaration d’énumération opaque, car elle n’ajoute rien au programme.

Toutefois, vous pouvez définir une énumération avec un ID qualifié. Par exemple:

struct S
{
   enum E : int;
};

enum S::E : int { e1, e2, e3 };