VS2015中C++ 的string 转换到 LPCTSTR 的实现

一、首先VS2015中默认的字符集是Unicode,使用字符串前面加上_T()转换,其实,采样这种方式可以很好的兼容ANSI和UNICODE字符集。 

二、创建一个vector容器,类型为string类型,并且把内容显示到编辑框。

vector<wstring> ivec = {_T("name"),_T("number"),_T("age")};        //定义字符串集合

vector<wstring>::iterator iter = ivec.begin();                                    //定义迭代器

三、开始转换,之所以要用到string转LPCTSTR,是为了把字符集显示到编辑框中。

void CMFCApplication2Dlg::OnBnClickedButtonShow()
{

    LPCTSTR str = iter->c_str();                               //开始转换
    m_ctrlGetName.SetWindowTextW( str );             //把转换的结果显示到编辑框控件

}

四、这里用到了vector和迭代器,我是在MFC中为了要把内容显示到一张很大的表格控件里面,所以可能看上去比较复杂。

string 到 LPCTSTR的转换主要是通过字符串对象的成员函数 c_str() 来实现转换, 另需要注意Unicode字符集的兼容性。 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值