3 Tipps für die Templates in C ++

Eine Funktion Vorlage ermöglicht es Ihnen, etwas zu schreiben, das wie eine Funktion aussieht, sondern verwendet eine oder mehrere Typenhalter, die C ++ bei der Kompilierung zu einem echten Typ umwandelt. Sie sollten ein paar Dinge erinnern, als Vorlagen.

  1. Zunächst wird kein Code für eine Vorlage erzeugt. (-Code generiert wird, nachdem die Vorlage in eine konkrete Klasse oder Funktion umgewandelt wird.) Das bedeutet, dass ein .cav Quelldatei ist fast nie mit einer Klasse-Vorlage verbunden.

    Die gesamte Klasse Template-Definition, einschließlich aller Mitgliedsfunktionen, sind in der Regel in einer Include-Datei enthalten ist, so dass es verfügbar sein können für den Compiler zu erweitern.

  2. Zweitens ist eine Klassenvorlage nicht verbrauchen Speicher. Daher gibt es keine Strafe für die Erstellung von Klassen-Templates, wenn sie nie instanziert werden. Auf der anderen Seite nutzt eine Klassenvorlage jedes Mal, Speicher es instanziert wird. Somit wird der Code für Feld verbraucht Speicher, auch wenn Feld ist bereits vorhanden.

  3. Schließlich kann eine Klassenvorlage nicht für Fehler zusammengestellt und geprüft werden, bis sie in eine echte Klasse umgewandelt wird. So kann ein Programm, das die Klassenvorlage verweist Feld könnte kompilieren, obwohl Feld enthält offensichtliche Syntaxfehler. Die Fehler gewonnen # 8242-t, bis eine Klasse erscheinen wie Feld oder Feld geschaffen.

Erstellen einer Funktion aus einer Vorlage aufgerufen instanziierenden Die Vorlage.

Menü