建議使用 Visual Studio 2017

編譯器錯誤 C3860

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

下列類別型別名稱的型別引數清單必須列出使用類型參數清單中的順序中的參數

泛型或樣板引數清單的格式錯誤。

下列範例會產生 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() {}  

顯示: