Error del compilador C3860
la lista de argumentos de tipo que sigue al nombre de tipo de clase debe enumerar los parámetros en el orden usado en la lista de parámetros de tipo
Una lista de argumentos genéricos o de plantilla tenía un formato incorrecto.
El ejemplo siguiente genera el error C3860:
// C3860.cpp
// compile with: /LD
template <class T1, class T2>
struct A {
void f();
};
template <class T2, class T1>
void A<T1, T2>::f() {} // C3860
Posible solución:
// C3860b.cpp
// compile with: /c
template <class T1, class T2>
struct A {
void f();
};
template <class T2, class T1>
void A<T2, T1>::f() {}
El error C3860 se puede producir también cuando se usan genéricos:
// C3860c.cpp
// compile with: /clr
generic<class T,class U>
ref struct GC {
void f();
};
generic<class T, class U>
void GC<T,T>::f() {} // C3860
Posible solución:
// C3860d.cpp
// compile with: /clr /c
generic<class T,class U>
ref struct GC {
void f();
};
generic<class T, class U>
void GC<T,U>::f() {}