SQL Server essence

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

'CString' to 'std::string':

std::string cannot always construct from a LPCTSTR i.e. the code will fail for UNICODE builds.

So the following conversion will lead to error:

CString cs("Hello");
std::string s((LPCTSTR)cs);


As std::string can construct only from LPSTR / LPCSTR, a programmer who uses VC++ 7.x or better can utilize conversion classes such as CT2CA as an intermediary.

  CString cs ("Hello");
  // Convert a TCHAR string to a LPCSTR
  CT2CA pszConvertedAnsiString (cs);
  // construct a std::string using the LPCSTR input
  std::string strStd (pszConvertedAnsiString);

 

'std::string' to 'CString':

std::string s("Hello");
CString cs(s.c_str());

posted on 2009-07-08 14:38  天蝎  阅读(581)  评论(0编辑  收藏  举报