Compilerfehler C3207

Aktualisiert: November 2007

Fehlermeldung

'Funktion': Ungültiges Vorlagenargument für 'arg', Klassenvorlage wurde erwartet
'function' : invalid template argument for 'arg', class template expected

Eine Vorlagenfunktion akzeptiert laut ihrer Definition ein Vorlagenargument in Form einer Vorlage. Es wurde jedoch ein Vorlagentypargument übergeben.

Im folgenden Beispiel wird C3207 generiert:

// C3207.cpp
template <template <class T> class TT>
void f(){}

template <class T>
struct S
{
};

void f1()
{
   f<S<int> >();   // C3207
   // try the following line instead
   // f<S>();
}