String Literale in Funktionstemplate
-
Hallo zusammen,
stehe grad wieder etwas aufm Schlauch. Ich habe einige string-Funktionen, die ich gern als template umsetzen möchte. Je nach Template-Typ müssen String Literale als
charoderwchar_tangegeben werden. Wie macht man sowas?Beispiel
#include <string> template<typename Ch> static std::basic_string<Ch> quote_string( const std::basic_string<Ch>& Text ) { return "\"" + Text + "\""; // für std::string // return L"\"" + Text + L"\""; // für std::wstring }
-
Tip für google: Partielle Template Spezialisierung
-
Es geht noch besser.
char_traits::to_char_type
-
Gast3 schrieb:
Tip für google: Partielle Template Spezialisierung
Genau das will ich ja nicht. Die Operationen sind für alle Stringtypen gleich, es ändert sich nur der
CharType. Sonst bräuchte ich auch keine Funktionstemplates, sondern alle Funktionen paarweise fürstd::stringundstd::wstring.rewrew schrieb:
Es geht noch besser.
char_traits::to_char_typeDas hilft mir, ein einzelnes Zeichen zu konvertieren. Für ganze Strings müsste ich die dann mühsam aus den einzelnen Zeichen zusammenbauen.