다음을 통해 공유


컴파일러 오류 C3860

형식 매개 변수 목록에 사용된 순서대로 매개 변수를 나열해야 하는 클래스 형식 이름 다음의 형식 인수 목록

제네릭 또는 템플릿 인수 목록이 잘못 구성되었습니다.

다음 샘플에서는 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

해결 방법:

// 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은 제네릭을 사용할 때도 발생할 수 있습니다.

// 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

해결 방법:

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