컴파일러 오류 C2427
'class': 이 범위에서 클래스를 정의할 수 없습니다.
중첩 클래스를 정의하려고 했지만 중첩 클래스는 가장 많이 포함된 클래스가 아닌 기본 클래스의 멤버입니다.
다음 샘플에서는 C2427을 생성합니다.
// C2427.cpp
// compile with: /c
template <class T>
struct S {
struct Inner;
};
struct Y : S<int> {};
struct Y::Inner {}; // C2427
// OK
template<typename T>
struct S<T>::Inner {};