CComBSTR::CComBSTR
O construtor.O construtor padrão define o membro de m_str a NULO.
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 );
Parâmetros
nSize
[in] número de caracteres a cópia de sz ou de tamanho inicial em caracteres para CComBSTR.sz
[in] cadeia de caracteres da cópia.A versão Unicode especifica LPCOLESTR; a versão ANSI especifica LPCSTR.pSrc
[in] cadeia de caracteres da cópia.A versão Unicode especifica LPCOLESTR; a versão ANSI especifica LPCSTR.src
[in] objeto de CComBSTR .guid
[in] referência da estrutura de GUID .
Comentários
O construtor de impressão define a m_str uma cópia do membro de BSTRde src.O construtor de REFGUID converte GUID a uma cadeia de caracteres usando StringFromGUID2 e armazena o resultado.
Os outros construtores definem m_str a uma cópia da cadeia de caracteres especificada.Se você passar um valor para nSize, então somente os caracteres de nSize serão copiados, seguido por um caractere de terminação zero.
O destrutor libera a cadeia de caracteres apontada por m_str.
Exemplo
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'
Requisitos
Cabeçalho: atlbase.h