Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Bei einer Funktionsvorlage können Sie ein spezielles Verhalten für einen bestimmten Typ definieren, indem Sie eine explizite Spezialisierung einer Funktionsvorlage (Überschreibung) für diesen Typ bereitstellen.Beispiele:
template<> void MySwap(double a, double b);
Durch diese Deklaration können Sie eine andere Funktion für double-Variablen zu definieren.Wie nicht auf Vorlagen basierende Funktionen werden konvertierungen Standard (z. B. Höherstufen einer Variablen vom Typ float zu double) angewendet.
Beispiel
// explicit_specialization.cpp
template<class T> void f(T t)
{
};
// Explicit specialization of f with 'char' with the
// template argument explicitly specified:
//
template<> void f<char>(char c)
{
}
// Explicit specialization of f with 'double' with the
// template argument deduced:
//
template<> void f(double d)
{
}
int main()
{
}