컴파일러 오류 C2477
'member': 정적 데이터 멤버는 파생 클래스를 통해 초기화할 수 없습니다.
템플릿 클래스의 정적 데이터 멤버가 잘못 초기화되었습니다. ISO C++ 표준을 준수하기 위해 Visual Studio .NET 2003 이전 버전의 Microsoft 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;