Teilen über


Compilerfehler C2914

'Identifier' : Typargument kann nicht abgeleitet werden, da das Funktionsargument mehrdeutig ist.

Bemerkungen

Der Compiler kann nicht ermitteln, welche überladenen Funktionen für ein generisches Argument oder ein Vorlagenargument verwendet werden sollen.

Examples

Im folgenden Beispiel wird C2914 generiert:

// 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 kann auch bei Verwendung von Generika auftreten. Im folgenden Beispiel wird C2914 generiert:

// 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); }