当前位置: 首页 > 编程技术 > 正文

CString转BSTR

准确的来说,题目的说法是不准确的的,CString是一个类,在MSDN中,BSTR的定义如下:

typedef OLECHAR* BSTR;

   虽然说法不正确,但是当我们需要使用到BSTR时。我们的一般方法是将字符内容存放在CString的一个成员的成员变量中,然后

    使用CString自带的函数实现转换 在编写ATL插件时,比较多的用到BSTR,其实,CString转BSTR很简单的,CString类提供了相应的成员函数,下面就是转换的示例代码:

CString sPassword = "Password" ; //创建一个CString的对象,并对赋值

BSTR bstrPassword ; 

bstrPassword = sPassword.AllocSysString();

//上面的示例代码实现了CString转BSTR

    实际上,我们使用了CString类的AllocSysString成员函数来实现转换,在MSDN中,AllocSysString的声明如下:

BSTR AllocSysString() const;

    通过CString的成员函数,我们实现了转换,其实CString还有很多的成员函数可以实现很多的转换,感兴趣的朋友可以参考下MSDN



本文固定链接: http://kuaile.in/archives/1098 | 蒲公英的博客

该日志由 蒲公英 于2012年07月05日发表在 编程技术 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: CString转BSTR | 蒲公英的博客
关键字:

CString转BSTR:等您坐沙发呢!

发表评论


You must enable javascript to see captcha here!

快捷键:Ctrl+Enter