컴파일러 오류 C2970
'class': 템플릿 매개 변수 'param': 'arg': 내부 링크가 있는 개체를 포함하는 식은 형식이 아닌 인수로 사용할 수 없습니다.
정적 변수의 이름이나 주소를 템플릿 인수로 사용할 수 없습니다. 템플릿 클래스에는 컴파일 시간에 평가할 수 있는 const 값이 있어야 합니다.
다음 샘플에서는 C2970을 생성합니다.
// C2970.cpp
// compile with: /c
static int si;
// could declare nonstatic to resolve all errors
// int si;
template <int i>
class X {};
template <int *pi>
class Y {};
X<si> anX; // C2970 cannot use static variable in templates
// this would also work
const int i = 10;
X<i> anX2;