LPCTSTR 转 string解决方法

LPCTSTR 转 string如题:LPCTSTR 转 string[解决办法]LPCTSTR在ansi下表示LPCSTR(const char *),在unicode

LPCTSTR 转 string
如题:LPCTSTR 转 string

[解决办法]
LPCTSTR在ansi下表示LPCSTR(const char *),在unicode下表示LPCWSTR(const wchat_t *)。而string只表示ansi字符,宽字符版本为wstring。因此应该分情况而论:

LPCTSTR lpszName = TEXT("Michael");
#ifdef UNICODE
wstring strName(lpszName);
#else
string strName(lpszName);
#endif // UNICODE

[解决办法]

C/C++ code
LPCTSTR a = _T("abc");basic_string<TCHAR> str = a;