Template-Parameter-Problem!
-
Hi
Sorry wegen dem nutzlosen Titel!
Ich habe zum Beispiel das:template <class SubKlasse> class Klasse { SubKlasse a(/*Konstruktordaten*/); };
Jetzt will ich, dass der Programmierer, der die Klasse "Klasse" deklariert, als SubKlasse nur z.B. den Typ int und char nehmen kann! Wie mach ich das?
-
Also wenn du nur zwei Typen unterstützen willst, dann kannst du das auch per Überladung bzw. Spezialisierung lösen. Eine andere Möglichkeit sind Template-Policies bzw. Traits.
Eine ähnliche Diskussion gab es vor kurzem im C++ SubForum: http://www.c-plusplus.net/forum/276917-10 (ab Seite 2 - besonders die Antworten von MFK).
-
Aus http://www.c-plusplus.net/forum/276917-10:
MFK schrieb:
Wie wäre es mit einem Policy-Templateparameter?
Wie wird dieser gesetzt? Wie default-Parameter bei Funktionen?
EDIT: Ja, ich habe mehr als zwei Klassen! Überladung fällt weg!
-
Dieser Thread wurde von Moderator/in akari aus dem Forum VCL (C++ Builder) in das Forum C++ (auch C++0x) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.