Instanziieren Sie eine Vorlagenklasse in C++

Muhammad Adil 11 Dezember 2023
  1. Vorteile der Verwendung der Vorlagenklassen
  2. Schritte zum Instanziieren einer Vorlagenklasse in C++
Instanziieren Sie eine Vorlagenklasse in C++

Vorlagenklassen werden verwendet, um neue Klassen zu erstellen, die dieselbe Implementierung verwenden. Sie werden hauptsächlich verwendet, um eine abstrakte Basisklasse zu erstellen, die eine allgemeine Implementierung eines bestimmten Typs bereitstellt.

Die Vorlagenklasse wird instanziiert, indem die Datentypen und Parameter für alle Methoden der Vorlagenklasse angegeben werden. Die instanziierte Klasse kann dann wie jede andere Klasse in Ihrem Programm verwendet werden, ohne dass ein Objekt dieses Typs angegeben oder erstellt werden muss.

Vorteile der Verwendung der Vorlagenklassen

Die Verwendung von Templates in C++ hat viele Vorteile. Ein Vorteil besteht darin, dass Vorlagen verwendet werden können, um generische Funktionen, Klassen und Datenstrukturen zu erstellen.

Das bedeutet, dass sie in vielen verschiedenen Programmen ohne Codeänderungen wiederverwendet werden können.

Ein weiterer Vorteil besteht darin, dass sie eine Möglichkeit bieten, den Programmierprozess zu verallgemeinern, wodurch es für Programmierer einfacher wird, da sie keine Zeit damit verbringen müssen, denselben Code wiederholt zu schreiben.

Schritte zum Instanziieren einer Vorlagenklasse in C++

Die folgenden Schritte helfen Ihnen, eine Vorlagenklasse in C++ zu instanziieren:

  • Erstellen Sie eine Header-Datei, die die Deklaration der Vorlagenklasse enthält.
  • Erstellen Sie eine .cpp-Datei, die die Implementierung der Template-Klasse enthält.
  • Fügen Sie die Header-Datei in die .cpp-Datei ein und stellen Sie sicher, dass sie vor allen anderen Anweisungen platziert wird.
  • Deklarieren Sie ein Objekt Ihres neuen Typs und initialisieren Sie es nach Bedarf mit Werten.
  • Rufen Sie Funktionen für Ihr Objekt auf, um seine Funktionen zu verwenden.

Beispiel:

#include <iostream>
using namespace std;
template <class P>
class Demo {
 private:
  P sam;

 public:
  Demo(P m) : sam(m) {}
  P getSam() { return sam; }
};
int main() {
  Demo<int> demoSam(56);
  cout << "int Number = " << demoSam.getSam() << endl;
  return 0;
}

Klicken Sie hier, um die Funktion des Codes wie oben erwähnt zu überprüfen.

Muhammad Adil avatar Muhammad Adil avatar

Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.

Facebook