編譯器錯誤 C2914
'identifier' : 無法推算類型自變數,因為函式自變數模棱兩可
編譯程式無法判斷要用於泛型或樣板自變數的多載函式。
下列範例會產生 C2914:
// C2914.cpp
// compile with: /c
void f(int);
void f(double);
template<class T> void g(void (*) (T));
void h() { g(f); } // C2914
// try the following line instead
// void h() { g<int>(f); }
使用泛型時,也會發生 C2914。 下列範例會產生 C2914:
// C2914b.cpp
// compile with: /clr /c
void f(int);
void f(double);
template<class T>
void gf(void (*) (T));
void h() { gf(f);} // C2914
// try the following line instead
void h() { gf<int>(f); }