다음을 통해 공유


컴파일러 오류 C2252

현재 범위에서 템플릿을 명시적으로 인스턴스화할 수 없습니다.

컴파일러가 템플릿의 명시적 인스턴스화와 관련된 문제를 발견했습니다. 예를 들어 함수에서 템플릿을 명시적으로 인스턴스화할 수 없습니다.

다음 샘플에서는 C2252를 생성합니다.

// C2252.cpp
class A {
public:
   template <class T>
   int getit(int i , T * it ) {
      return i;
   }
   template int A::getit<double>(int i, double * it);   // C2252
   // try the following line instead
   // template <> int A::getit<double>(int i, double * it);

};

int main() {
   // cannot explicitly instantiate in function
   template int A::getit<long>(int i, long * it);   // C2252
}