Stilistische Frage zum reinterpretieren von Bitmustern (char, TCHAR, wchar_t)



  • Hallo,
    ich wollte mir auf die Schnelle eine Funktion schreiben, mit der ich wchar_t bzw. TCHAR in normale chars umwandeln kann. Mein erster entwurf sah so aus:

    template<typename T>
    std::string ttos(const T* a)
    {
        std::string tmp;
        for( ; *a != 0; ++a)
           tmp+=*(reinterpret_cast<const char*>(a));
        return tmp;
    }
    

    Allerdings frage ich mich, ob es mit einem static cast nicht schöner ist

    template<typename T>
    std::string ttos(const T* a)
    {
        std::string tmp;
        for( ; *a != 0; ++a)
           tmp+=static_cast<char>(*a);
        return tmp;
    }
    

    Was würdet ihr benutzen? Oder würdet ihr das ganz anders lösen?



  • Mit der static_cast find ich besser. Aber noch besser wäre, kein Rad zu entwickeln und die schon vorhandene Funktionen wie wcstombs() zu benutzen.


Log in to reply