컴파일러 오류 C2477
업데이트: 2007년 11월
오류 메시지
'member' : 정적 데이터 멤버는 파생 클래스를 통해 초기화할 수 없습니다.
'member' : static data member cannot be initialized via derived class
템플릿 클래스의 정적 데이터 멤버가 잘못 초기화되었습니다. 이는 ISO C++ 표준과의 호환을 위해 Visual C++ .NET 2003 이전 버전의 Visual C++ 컴파일러에 이루어진 주요 변경 내용입니다.
자세한 내용은 컴파일 타임의 주요 변경 내용 요약을 참조하십시오.
다음 샘플에서는 C2477 경고가 발생하는 경우를 보여 줍니다.
// C2477.cpp
// compile with: /Za /c
template <class T>
struct S {
static int n;
};
struct X {};
struct A: S<X> {};
int A::n = 0; // C2477
template<>
int S<X>::n = 0;