string 转成CString 特别注意,一定要加上c_str(),否则出错

来源:互联网 发布:2014年消费数据统计 编辑:程序博客网 时间:2024/05/16 18:55

string 转成CString 特别注意,一定要加上c_str(),否则出错

 

今天做了一个结构体

struct UserInfo
{
 string userName;
 string passWord;
 int  nPower;  //权限
};

 

然后定义了UserInfo的一个list变量 std::list<UserInfo> user;

 

user.push_back(***);

 

需要转换成CString 的变量

 

CString str;

str.Format("%s",user.userName);

 

在这个地方经常出错

 

一开始还以为是list出现问题了,

 

后来无意间把Format("%s",****)  ,换成了Format("%c",****);

发现能够正常通过

===========

原来string 不能直接转换为CString

需要使用c_str() 函数 转换成const char * 后,然后再Format();