Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Wie Man Template-Spezialisierung Verwendet | Templatespezialisierung
C++-Vorlagen
course content

Kursinhalt

C++-Vorlagen

C++-Vorlagen

1. Erstellen der Ersten Vorlage
2. Verwendung von Templates
3. Klassenvorlagen
4. Templatespezialisierung

book
Wie Man Template-Spezialisierung Verwendet

Syntax der Templatespezialisierung

Um zu verstehen, wie die Templatespezialisierung funktioniert, müssen wir zunächst begreifen, was im Hintergrund passiert, wenn ein Template mit einem bestimmten Datentyp aufgerufen wird.

Wenn Sie eine Template-Funktion mit einem bestimmten Typ aufrufen, generiert der Compiler eine konkrete Instanz des Templates für diesen Typ. Dieser Prozess wird als Template-Instantierung bezeichnet. Im Wesentlichen ersetzt der Compiler den Template-Parameter durch den bereitgestellten Typ und erstellt eine spezialisierte Version der Funktion.

cpp

main

h

header

copy
123456789101112
#include <iostream> template<typename T> T TemplateFunction(T value) { return value; } int main() { // When the compiler encounters this line // It generates a function for the specified type // VVV TemplateFunction<int>(5); }

Aber zuerst wird überprüft, ob bereits eine Substitution für diese Funktion existiert. Es macht keinen Sinn, mehrere Instanzen dieser Funktion zu generieren, wenn sie wiederholt mit demselben Typ aufgerufen wird. Mit diesem Wissen können wir es für unsere Zwecke nutzen.

Aufgabe

Swipe to start coding

Erstellen Sie eine Templatespezialisierung für die TemplateFunction, die std::string Datentypen verarbeitet.

  1. Implementieren Sie eine Spezialisierung für TemplateFunction, um std::string Parameter unterschiedlich zu verarbeiten.
  2. Stellen Sie sicher, dass jeder als Parameter übergebene String den Präfix "Specialized: " am Anfang des zurückgegebenen Wertes hat.

Lösung

cpp

solution

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 2
toggle bottom row

book
Wie Man Template-Spezialisierung Verwendet

Syntax der Templatespezialisierung

Um zu verstehen, wie die Templatespezialisierung funktioniert, müssen wir zunächst begreifen, was im Hintergrund passiert, wenn ein Template mit einem bestimmten Datentyp aufgerufen wird.

Wenn Sie eine Template-Funktion mit einem bestimmten Typ aufrufen, generiert der Compiler eine konkrete Instanz des Templates für diesen Typ. Dieser Prozess wird als Template-Instantierung bezeichnet. Im Wesentlichen ersetzt der Compiler den Template-Parameter durch den bereitgestellten Typ und erstellt eine spezialisierte Version der Funktion.

cpp

main

h

header

copy
123456789101112
#include <iostream> template<typename T> T TemplateFunction(T value) { return value; } int main() { // When the compiler encounters this line // It generates a function for the specified type // VVV TemplateFunction<int>(5); }

Aber zuerst wird überprüft, ob bereits eine Substitution für diese Funktion existiert. Es macht keinen Sinn, mehrere Instanzen dieser Funktion zu generieren, wenn sie wiederholt mit demselben Typ aufgerufen wird. Mit diesem Wissen können wir es für unsere Zwecke nutzen.

Aufgabe

Swipe to start coding

Erstellen Sie eine Templatespezialisierung für die TemplateFunction, die std::string Datentypen verarbeitet.

  1. Implementieren Sie eine Spezialisierung für TemplateFunction, um std::string Parameter unterschiedlich zu verarbeiten.
  2. Stellen Sie sicher, dass jeder als Parameter übergebene String den Präfix "Specialized: " am Anfang des zurückgegebenen Wertes hat.

Lösung

cpp

solution

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 2
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt