Nun Templates erstparen dir das überladen von Funktionen mit der selben Anzahl von Parametern
Willst du lieber 3 Funktionen schreiben die einen int, double und float wert bekommen oder lieber eine Funktion mit 2 Templates?
Templates haben auch Vorteile
Wenn du z.b. eine Additionsfunktion für Zahlen und Stringsbrauchst musst du diese nur einmal schreiben
z.b.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
|
//Deklaration:
template <typename Temp>
Temp Addition(Temp, Temp);
//Implemenation:
template <typename Temp>
Temp Addition(Temp Temp_1, Temp Temp_2)
{
return Temp_1+Temp_2;
}
|
Alternativ kann man auch void* benutzen
Deklaration und Implementation von Templatefunktionen/Klassen müssen direkt in die Header =)
So kannst du für int, double, float und Strings eine Funktion nutzen ohne das du die selbe Funktion 3 mal Überladen musst
Singletons sind dazu da um sachen wie z.b. einen Zeiger nur einmal zuhaben.
In der Spieleprogrammierung kann man nur eine Instanz einer Spieleengine haben
Oder brauchst du 10 nur um alles zurendern?
Static bedeutet das diese Variable nur einmal deklariert wird und nachdem verlassen der Funktion o.ä wird der Wert gemerkt.
Dazu nutzt man Sungletons
Coole sache und vermeidet Globale sachen =)