Compartir a través de


Error del compilador C2991

redefinición del parámetro de tipo 'parameter'

Se produjo un conflicto de tipos entre dos definiciones de plantilla o genéricas de parameter. Al definir varios parámetros genéricos o de plantilla, se deben usar tipos equivalentes.

El ejemplo siguiente genera la advertencia 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 {};

También se puede producir C2991 al 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 {};