CComBSTR::CComBSTR

构造函数。 默认值构造函数将 m_str 成员访问

CComBSTR( ) throw( ); 
CComBSTR( 
   const CComBSTR& src  
); 
CComBSTR( 
   REFGUID guid  
); 
CComBSTR( 
   int nSize  
); 
CComBSTR( 
   int nSize, 
   LPCOLESTR sz  
); 
CComBSTR( 
   int nSize, 
   LPCSTR sz  
); 
CComBSTR( 
   LPCOLESTR pSrc  
); 
CComBSTR( 
   LPCSTR pSrc  
);

参数

  • nSize
    [in] 要复制的字符数。sz 从或的初始大小在 CComBSTR的字符。

  • sz
    [in] 复制的字符串。 Unicode 版本指定 LPCOLESTR;ANSI 版本指定 LPCSTR

  • pSrc
    [in] 复制的字符串。 Unicode 版本指定 LPCOLESTR;ANSI 版本指定 LPCSTR

  • src
    [in] 一个 CComBSTR 对象。

  • guid
    [in] 一个对 GUID 结构。

备注

复制构造函数设置 m_strsrc 的BSTR 成员的副本。 REFGUID 构造函数转换 GUID 转换为字符串使用 StringFromGUID2 并存储结果。

其他构造函数将 m_str 到指定字符串的副本。 如果通过 nSize的值,则只 nSize 字符将由一个终止 null 字符副本,后面。

析构函数释放该字符串指向由 m_str

示例

CComBSTR bstr1;   // BSTR points to NULL
bstr1 = "Bye";    // initialize with assignment operator 
                  // ANSI string is converted to wide char

OLECHAR* str = OLESTR("Bye bye!");  // wide char string of length 5 
int len = (int)wcslen(str);
CComBSTR bstr2(len + 1);// unintialized BSTR of length 6
wcsncpy_s(bstr2.m_str, bstr2.Length(), str, len); // copy wide char string to BSTR

CComBSTR bstr3(5, OLESTR("Hello World")); // BSTR containing 'Hello',  
                                          // input string is wide char
CComBSTR bstr4(5, "Hello World");         // same as above, input string  
                                          // is ANSI

CComBSTR bstr5(OLESTR("Hey there")); // BSTR containing 'Hey there',  
                                     // input string is wide char
CComBSTR bstr6("Hey there");         // same as above, input string  
                                     // is ANSI

CComBSTR bstr7(bstr6);     // copy constructor, bstr7 contains 'Hey there'   

要求

Header: atlbase.h

请参见

参考

CComBSTR 类

其他资源

ATL and MFC String Conversion Macros