다음을 통해 공유


컴파일러 오류 C2513

업데이트: 2007년 11월

오류 메시지

'type' : '=' 앞에 변수를 선언하지 않았습니다.
'type' : no variable declared before '='

형식 지정자가 변수 식별자 없이 선언 부분에 표시됩니다.

다음 샘플에서는 C2513 오류가 발생하는 경우를 보여 줍니다.

// C2513.cpp
int main() {
   int = 9;   // C2513
   int i = 9;   // OK
}

Visual Studio .NET 2003에서는 컴파일러 규칙에 따라 이제 형식 정의를 초기화할 수 없기 때문에 이 오류가 발생할 수도 있습니다. 표준에서는 형식 정의를 초기화할 수 없으므로 컴파일러 오류가 생성됩니다.

자세한 내용은 컴파일 타임의 주요 변경 내용 요약을 참조하십시오.

// C2513b.cpp
// compile with: /c
typedef struct S {
   int m_i;
} S = { 1 };   // C2513
// try the following line instead
// } S;

또는 typedef를 삭제하여 집합체 이니셜라이저 목록으로 변수를 정의할 수 있습니다. 그러나 형식과 동일한 이름을 가진 변수가 만들어지고 형식 이름이 숨겨지므로 이렇게 하지 않는 것이 좋습니다.