Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
'class' : identificador de tipo de classe redefinido como um argumento formal de uma função
Observações
Você não pode usar uma classe genérica ou de modelo como um argumento formal. Você não pode passar um argumento diretamente para o construtor de uma classe genérica ou modelo.
Este erro está obsoleto no Visual Studio 2022 e versões posteriores.
Examples
O exemplo a seguir gera C2942:
// C2942.cpp
// compile with: /c
template<class T>
struct TC {};
void f(int TC<int>) {} // C2942
// OK
struct TC2 {};
void f(TC2 i) {}
C2942 também pode ocorrer quando se utilizam genéricos:
// C2942b.cpp
// compile with: /clr /c
generic<class T>
ref struct GC {};
void f(int GC<int>) {} // C2942
ref struct GC2 { };
void f(int GC2) {}