读书人

求最保险的BSTR转换AnsiString的方法

发布时间: 2013-01-02 13:08:44 作者: rapoo

求最安全的BSTR转换AnsiString的方法
BSTR已有值,求最安全的BSTR转换AnsiString的方法
[解决办法]
什么叫最安全呀,难道AnsiString的构造函数不安全么???
可以直接利用构造函数转的吧.
[解决办法]


BSTR b=L"bb";
WideString w="www";
AnsiString s;
s = b;
//或
s = w;

[解决办法]
BSTR的本质就是wchar_t *,AnsiString类的一个构造函数形式就是"__fastcall AnsiString(const wchar_t* src);",也就是说把BSTR对象直接供稿AnsiString对象的构造函数就行了,如:

BSTR lp = L"abc";
AnsiString str = AnsiString(lp);

这不存在安不安全的问题。只是BSTR对象的释放,如果需要用户负责,那么需要调用SysFreeString来释放。

读书人网 >C++ Builder

热点推荐