Condividi tramite


Errore del compilatore C2944

'class': type-class-id ridefinito come argomento valore di un modello

Non è possibile usare una classe generica o modello, anziché un simbolo, come argomento del valore del modello.

Questo errore è obsoleto in Visual Studio 2022 e versioni successive.

L'esempio seguente genera l'errore C2944:

// C2944.cpp
// compile with: /c
template<class T>
class TC { };

template <int TC<int> > struct X1 { };   // C2944

template <class T > struct X2 {};

L'errore C2944 può verificarsi anche quando si usano i generics:

// C2944b.cpp
// compile with: /clr /c
generic<class T>
ref class GC {};

template <int GC<int> > struct X2 { };   // C2944
template <class T> struct X3 {};   // OK