Teilen über


Compilerfehler C2894

Vorlagen können nicht mit „C“-Bindung deklariert werden

Bemerkungen

Dieser Fehler kann durch eine Vorlage verursacht werden, die innerhalb eines extern "C" Blocks definiert ist.

Examples

Im folgenden Beispiel wird C2894 generiert:

// C2894.cpp
extern "C" {
   template<class T> class stack {};   // C2894 fail

   template<class T> void f(const T &aT) {}   // C2894
}

Im folgenden Beispiel wird C2894 generiert:

// C2894b.cpp
// compile with: /c
extern "C" template<class T> void f(const T &aT) {}   // C2894

template<class T> void f2(const T &aT) {}   // OK