字符串轉換系列四:CComBSTR和_bstr_t

四、CComBSTR和_bstr_t

  CComBSTR是對BSTR數據類型封裝的一個ATL類,它的操作比較方便。例如:

CComBSTR bstr1;
bstr1 = "Bye"; // 直接賦值
OLECHAR* str = OLESTR("ta ta"); // 長度爲5的寬字符
CComBSTR bstr2(wcslen(str)); // 定義長度爲5
wcscpy(bstr2.m_str, str); // 將寬字符串複製到BSTR中
CComBSTR bstr3(5, OLESTR("Hello World"));
CComBSTR bstr4(5, "Hello World");
CComBSTR bstr5(OLESTR("Hey there"));
CComBSTR bstr6("Hey there");
CComBSTR bstr7(bstr6);
// 構造時複製,內容爲"Hey there"

  _bstr_t是是C++對BSTR的封裝,它的構造和析構函數分別調用SysAllocString和SysFreeString函數,其他操作是借用BSTR API函數。與_variant_t相似,使用時也要添加comutil.h和comsupp.lib。

 
發佈了32 篇原創文章 · 獲贊 3 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章