Template-Typedef
-
Weil ich dank User jetzt überall Makros durch Templates ersetze, ist sowas ersetzbar:
#define List std::list ... List<int> myList; ... // Funktioniert nur wenn ich den T-param spezifiziere typedef std::list List; // blubb typedef std::list<int> IntList; // okMfG SideWinder
-
nein, es gibt keine template-typedefs.
-
Auf den nächsten Standard warten
, dann wird sowas wohl funktionieren.
Du kannst sowas aber simulieren, indem du List als neue Klasse definierst und von std::list ableitest. Allerdings musst du dann jeden ctor neu definieren. Wenn List also sowieso global sein soll, dann bist du mit einem define sicherlich besser bedient.
-
wenn ich mich recht erinnere, klappt die variante mit ableitungen auch nicht, wenn man template funktionen mit impliziter template parameter deduktion bauen will, weil dann ja keine konvertierungen (einschliesslich Derived& nach Base&) durchgeführt werden.
template typedefs sind wirklich dringend nötig. typedefs die eigenständige typen (und nicht bloß ein alias) sind, wären auch ganz nett.
-
typedefs die eigenständige typen (und nicht bloß ein alias) sind, wären auch ganz nett.
es gab im cuj mal einen artikel dazu, der auf ne stlsoft lib verwies, die true typedefs simuliert.
http://synesis.com.au/software/stlsoft/help/classstlsoft_1_1true__typedef.html