Teilen über


Compilerfehler C2252

Vorlage kann im aktuellen Bereich nicht explizit instanziieren

Bemerkungen

Der Compiler hat ein Problem mit einer expliziten Instanziierung einer Vorlage erkannt. Sie können beispielsweise eine Vorlage in einer Funktion nicht explizit instanziieren.

Example

Im folgenden Beispiel wird C2252 generiert:

// 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
}