Ошибка компилятора C2944
"class" : type-class-id переопределен как аргумент значения шаблона
Нельзя использовать универсальный или шаблонный класс вместо символа в качестве аргумента значения шаблона.
Эта ошибка устарела в Visual Studio 2022 и более поздних версиях.
В следующем примере возникает ошибка C2944:
// C2944.cpp
// compile with: /c
template<class T>
class TC { };
template <int TC<int> > struct X1 { }; // C2944
template <class T > struct X2 {};
Ошибка C2944 также может возникнуть при использовании универсальных шаблонов:
// 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