Compartilhar via


Erro do compilador C2991

redefinição do parâmetro de tipo 'parameter'

Houve um conflito de tipo entre duas definições genéricas ou de modelo de parameter. Ao definir vários parâmetros genéricos ou de modelo, você precisa usar tipos equivalentes.

O seguinte exemplo gera o erro C2991:

// C2991.cpp
// compile with: /c
template<class T, class T> struct TC {};   // C2991
// try the following line instead
// template<class T, class T2> struct TC {};

O erro C2991 também pode ocorrer ao usar genéricos:

// C2991b.cpp
// compile with: /clr /c
generic<class T,class T> ref struct GC {};   // C2991
// try the following line instead
// generic<class T,class T2> ref struct GC {};