Compartilhar via


CStringT::SetSysString

Realoca BSTR apontado por pbstr e copia o conteúdo do objeto de CStringT em ele, incluindo o caractere de NULL .

BSTR SetSysString(
   BSTR* pbstr
) const;

Parâmetros

  • pbstr
    Um ponteiro para uma cadeia de caracteres.

Valor de retorno

A nova cadeia de caracteres.

Comentários

Dependendo do conteúdo do objeto de CStringT , o valor de BSTR referenciado por pbstr pode mudar. A função gera CMemoryException se a memória insuficiente existe.

Essa função é normalmente usada para alterar o valor de cadeias de caracteres passada por referência para automação.

Exemplo

BSTR bstr = ::SysAllocString(L"Golf is fun!");

// create a CAtlString and change the OLE 
// string to the contents of the BSTR 
// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;

CAtlString str(_T("Soccer is best!"));
BSTR bstr2 = str.SetSysString(&bstr);

// Now, both bstr and bstr2 reference a single instance of 
// the "Soccer" string. The "Golf" string has been freed.
ASSERT(bstr2 == bstr);   

Requisitos

Cabeçalho: cstringt.h

Consulte também

Referência

Classe de CStringT

Classe CMemoryException