I have Microsoft C++ compiler experience. There you could adjust your using/not using UNICODE compilation path very simply. Following constructions were legitimate and perfectly possible:
#ifdef UNICODE
typedef std::wstring string;
#else
typedef std::string string;
#endif
But how can I handle the same situation with Apple LLVM compiler?
P.S. GCC hints will also be appreciated.
UPDATE: In Windows programming it is better to use UNICODE strings (especially, if you heavily work with WinAPI, which is UNICODE based). Are there any reasons to use wstring instead of string (except charset differences) on LLVM or GCC for OSX and iOS?