templates
-
kann mal einer denn richtigen nutzen von template stzeigen
ich hab kapiert wie man sie macht und dass es objektunabhängigkeit macht aber sonst?
was bringen die wirklich?



-
hi. templates sind vorlagen.
-
shade37337 schrieb:
kann mal einer denn richtigen nutzen von template stzeigen
So auf die Schnelle geht das aber nicht. Mit Templates lässt sich nämlich so einiges machen. Da solltest du deine Frage schon spezifizieren.
shade37337 schrieb:
ich hab kapiert wie man sie macht und dass es objektunabhängigkeit macht aber sonst?
"objektunabhängigkeit macht"? Entweder hast du den Sinn noch nicht verstanden, oder du drückst dich etwas unverständlich aus.
Wie mein Vorredner schon sagte, sind Templates Vorlagen. Dh, Klassen oder Funktionen, deren endgültige Definition aufgrund unbestimmter/variabler Parameter erst bei der Instanzierung bzw. dem Aufruf erfolgt. Der Vorteil dabei ist, man schreibt alles genau einmal, die daraus resultierenden Varianten generiert der Compiler selbst.
Bsp:template <class T> class string; // aaaah, super - wir haben eine String Klasse, wo ich den Typ der Zeichen bei der Instanzierung frei wählen kann // so muss ich nicht für alle Varianten jedesmal die Klasse neu definieren string<char> a; // hmm, ein String aus single-byte Zeichen string<wchar_t> b; // yep, wir wollen mehr - wide Zeichen rockenshade37337 schrieb:
was bringen die wirklich?
Nun, wie bereits erwähnt, gibt es viele Einsatzgebiete. Codevereinfachung/-reduktion, Spezialisierung, Meta-Programmierung, Policies, statischer Polymorphismus, Expression Templates und noch einiges mehr. Such dir was aus!
btw:
Einmal
reicht aus, neunmal macht es auch nicht verständlicher.