Heim > Backend-Entwicklung > C++ > Hauptteil

Können Sie Vorlagenparameter in C-Konstruktoren explizit angeben?

Linda Hamilton
Freigeben: 2024-11-13 03:03:02
Original
902 Leute haben es durchsucht

Can You Explicitly Specify Template Parameters in C   Constructors?

Explizite Spezifikation von Konstruktor-Vorlagenparametern

In C kann ein Klassenkonstruktor als Vorlagenfunktion definiert werden. Normalerweise bestimmt der Compiler die verwendeten Vorlagenparameter, indem er die Argumente untersucht, die beim Aufruf an den Konstruktor übergeben werden. Gibt es jedoch eine Möglichkeit, stattdessen die Vorlagenparameter explizit anzugeben?

Beispiel für einen Vorlagenkonstruktor

Betrachten Sie die folgende Klasse:

struct A {
   template<typename T>
   A() {}
};
Nach dem Login kopieren

Explizite Parameterspezifikation

Leider bietet C 03 keine Möglichkeit, die Vorlagenparameter eines Konstruktors explizit anzugeben. Im Standard heißt es:

[Hinweis: Da die Liste der expliziten Vorlagenargumente dem Funktionsvorlagennamen folgt und
da Konvertierungs-Member-Funktionsvorlagen und Konstruktor-Member-Funktionsvorlagen ohne Verwendung eines Funktionsnamens aufgerufen werden, gibt es keinen Möglichkeit, eine explizite Vorlagenargumentliste für diese Funktionsvorlagen bereitzustellen.] (§14.5.2/5)

Das obige ist der detaillierte Inhalt vonKönnen Sie Vorlagenparameter in C-Konstruktoren explizit angeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage