Почему бы не сделать так, как это делает Win32 API: используйте широкие символы внутри и предоставьте символьно-конвертирующий фасад функций DoSomethingA
, которые просто преобразуют их ввод в Unicode.
Тем не менее, вы можете определить тип tstring
следующим образом:
#ifdef _UNICODE
typedef std::wstring tstring;
#else
typedef std::string tstring;
#endif
или, возможно:
typedef std::basic_string<TCHAR> tstring;