Udostępnij przez


Błąd kompilatora C2894

Nie można zadeklarować powiązania "C" szablonów

Uwagi

Ten błąd może być spowodowany przez szablon zdefiniowany wewnątrz extern "C" bloku.

Przykłady

Poniższy przykład generuje kod C2894:

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

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

Poniższy przykład generuje kod C2894:

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