다음을 통해 공유


컴파일러 오류 C7742

식별자: 열거형의 전달 선언은 단순 식별자만 사용할 수 있습니다.

C++ 표준에서는 정규화된 ID를 사용하여 불투명 열거형을 선언할 수 없습니다. 불투명 열거형 선언은 이름과 기본 형식을 지정하지만 열거자 또는 해당 값은 나열하지 않습니다.

다음 예제에서는 C7742를 생성합니다.

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

이 오류를 해결하려면 프로그램에 아무것도 추가하지 않으므로 불투명 열거형 선언을 제거합니다.

그러나 정규화된 ID를 사용하여 열거형을 정의할 수 있습니다. 예를 들어:

struct S
{
   enum E : int;
};

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