Partilhar via


Erro do compilador C3860

Lista de argumentos de tipo seguindo o nome de tipo de classe deve listar os parâmetros na mesma ordem da lista de parâmetros de tipo

Observações

Uma lista de argumentos genérica ou de modelo estava mal formada.

Examples

O exemplo a seguir gera 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

Resolução possível:

// C3860b.cpp
// compile with: /c
template <class T1, class T2>
struct A {
   void f();
};

template <class T2, class T1>
void A<T2, T1>::f() {}

C3860 também pode ocorrer ao usar 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

Resolução possível:

// 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() {}