Я сделал это на очень больших проектах, и он прекрасно работает:
namespace std
{
#ifdef _UNICODE
typedef wstring tstring;
#else
typedef string tstring;
#endif
}
Вместо этого вы можете использовать wstring везде, если хотите, если вам не нужно когда-либо компилировать, используя многобайтовую строку символов. Я не думаю, что вам когда-либо потребуется поддерживать многобайтовые строки символов в любом современном приложении.
Примечание. Предполагается, что пространство имен std
запрещено, но у меня не было никаких проблем с вышеуказанным методом в течение нескольких лет.