std::basic_string<char_t> und String-Literale



  • Hallo zusammen,

    Ich habe eine Funktion

    template <typename char_t, typename traits = std::char_traits<char_t>>
    void foo(std::basic_string<char_t, traits> string);
    

    und möchte diese nun mit einem String-Literal aufrufen. Das geht ja nicht, weil es bei Templates keine automatische Konvertierung (via Konstruktoren oder so) gibt.
    Gibt es da irgendein Workaround außer explizites casten?



  • Überlade die Funktion oder gib den Zeichentyp explizit an:

    foo<char>("literal")
    

Anmelden zum Antworten