Compartilhar via


Classe HString

Uma classe auxiliar para gerenciar o tempo de vida de um HSTRING usando o padrão RAII.

Sintaxe

class HString;

Comentários

O Windows Runtime fornece acesso a cadeias de caracteres por meio de identificadores HSTRING. A classe HString fornece funções e operadores práticos para simplificar o uso de identificadores HSTRING. Essa classe pode lidar com o tempo de vida do HSTRING que ela comanda por meio de um padrão RAII.

Membros

Construtores públicos

Nome Descrição
HString::HString Inicializa uma nova instância da classe HString.
HString::~HString Destrói a instância atual da classe HString.

Métodos públicos

Nome Descrição
HString::Attach Associa o objeto especificado HString ao objeto atual HString.
HString::CopyTo Copia o objeto atual HString em um objeto HSTRING.
HString::Detach Desassocia o objeto especificado HString de seu valor subjacente.
HString::Get Recupera o valor do identificador HSTRING subjacente.
HString::GetAddressOf Recupera um ponteiro para o identificador HSTRING subjacente.
HString::GetRawBuffer Recupera um ponteiro para os dados de cadeia de caracteres subjacentes.
HString::IsValid Indica se o valor atual do objeto HString é válido.
HString::MakeReference Cria um objeto HStringReference a partir de um parâmetro de cadeia de caracteres especificado.
HString::Release Exclui o valor da cadeia de caracteres subjacente e inicializa o objeto atual HString com um valor vazio.
HString::Set Define o valor do objeto atual HString como a cadeia de caracteres largos ou o parâmetro HString especificados.

Operadores públicos

Nome Descrição
HString::operator= Move o valor de outro objeto HString para o objeto HString atual.
HString::operator== Indica se os dois parâmetros são iguais.
HString::operator!= Indica se os dois parâmetros não são iguais.
HString::operator< Indica se o primeiro parâmetro é menor que o segundo parâmetro.

Hierarquia de herança

HString

Requisitos

Cabeçalho: corewrappers.h

Namespace: Microsoft::WRL::Wrappers

HString::~HString

Destrói a instância atual da classe HString.

~HString() throw()

HString::Attach

Associa o objeto especificado HString ao objeto atual HString.

void Attach(
       HSTRING hstr
       ) throw()

Parâmetros

hstr
Um objeto HString existente.

HString::CopyTo

Copia o objeto atual HString em um objeto HSTRING.

HRESULT CopyTo(
   _Out_ HSTRING *str
   ) const throw();

Parâmetros

str
O HSTRING que recebe a cópia.

Comentários

Esse método chama a função WindowsDuplicateString.

HString::Detach

Desassocia o objeto especificado HString de seu valor subjacente.

HSTRING Detach() throw()

Valor de retorno

O valor subjacente HString antes do início da operação de desanexação.

HString::Get

Recupera o valor do identificador HSTRING subjacente.

HSTRING Get() const throw()

Valor de retorno

O valor do identificador HSTRING subjacente.

HString::GetAddressOf

Recupera um ponteiro para o identificador HSTRING subjacente.

HSTRING* GetAddressOf() throw()

Valor de retorno

Um ponteiro para o identificador HSTRING subjacente.

Comentários

Após essa operação, o valor da cadeia de caracteres do identificador HSTRING subjacente é destruído.

HString::GetRawBuffer

Recupera um ponteiro para os dados de cadeia de caracteres subjacentes.

const wchar_t* GetRawBuffer(unsigned int* length) const;

Parâmetros

length Ponteiro para uma variável int que recebe o comprimento dos dados.

Valor de retorno

Um ponteiro const para os dados de cadeia de caracteres subjacentes.

HString::HString

Inicializa uma nova instância da classe HString.

HString() throw();
HString(HString&& other) throw();

Parâmetros

hstr
Um identificador HSTRING.

other
Um objeto HString existente.

Comentários

O primeiro construtor inicializa um novo objeto HString que está vazio.

O segundo construtor inicializa um novo objeto HString para o valor do outro parâmetro existente e, em seguida, destrói o outro parâmetro.

HString::IsValid

Indica se o objeto HString atual está vazio.

bool IsValid() const throw()

Parâmetros

true se o objeto HString atual não estiver vazio; caso contrário, false.

HString::MakeReference

Cria um objeto HStringReference a partir de um parâmetro de cadeia de caracteres especificado.

template<unsigned int sizeDest>
    static HStringReference MakeReference(
              wchar_t const (&str)[ sizeDest]);

    template<unsigned int sizeDest>
    static HStringReference MakeReference(
              wchar_t const (&str)[sizeDest],
              unsigned int len);

Parâmetros

sizeDest
Um parâmetro de modelo que especifica o tamanho do buffer de destino HStringReference.

str
Uma referência a uma cadeia de caracteres largos.

len
O comprimento máximo do buffer de parâmetro str a ser usado nesta operação. Se o parâmetro len não for especificado, todo o parâmetro str será usado.

Valor de retorno

Um objeto HStringReference cujo valor é o mesmo do parâmetro str especificado.

HString::operator= Operator

Move o valor de outro objeto HString para o objeto HString atual.

HString& operator=(HString&& other) throw()

Parâmetros

other
Um objeto HString existente.

Comentários

O valor do outro objeto existente é copiado para o objeto atual HString e, em seguida, o outro objeto é destruído.

HString::operator== Operator

Indica se os dois parâmetros são iguais.

inline bool operator==(
               const HString& lhs,
               const HString& rhs) throw()

inline bool operator==(
                const HString& lhs,
                const HStringReference& rhs) throw()

inline bool operator==(
                const HStringReference& lhs,
                const HString& rhs) throw()

inline bool operator==(
                 const HSTRING& lhs,
                 const HString& rhs) throw()

inline bool operator==(
                 const HString& lhs,
                 const HSTRING& rhs) throw()

Parâmetros

lhs
O primeiro parâmetro a ser comparado. Lhs pode ser um objeto HString ou HStringReference, ou um identificador HSTRING.

rhs
O segundo parâmetro a ser comparado. rhs pode ser um objeto HString ou HStringReference, ou um identificador HSTRING.

Valor de retorno

true se os parâmetros lhs e rhs forem iguais; caso contrário, false.

HString::operator!= Operator

Indica se os dois parâmetros não são iguais.

inline bool operator!=( const HString& lhs,
                        const HString& rhs) throw()

inline bool operator!=( const HStringReference& lhs,
                        const HString& rhs) throw()

inline bool operator!=( const HString& lhs,
                        const HStringReference& rhs) throw()

inline bool operator!=( const HSTRING& lhs,
                        const HString& rhs) throw()

inline bool operator!=( const HString& lhs,
                        const HSTRING& rhs) throw()

Parâmetros

lhs
O primeiro parâmetro a ser comparado. Lhs pode ser um objeto HString ou HStringReference, ou um identificador HSTRING.

rhs
O segundo parâmetro a ser comparado. rhs pode ser um objeto HString ou HStringReference, ou um identificador HSTRING.

Valor de retorno

true se os parâmetros lhs e rhs não forem iguais; caso contrário, false.

Operador HString::operator<

Indica se o primeiro parâmetro é menor que o segundo parâmetro.

inline bool operator<(
    const HString& lhs,
    const HString& rhs) throw()

Parâmetros

lhs
O primeiro parâmetro a ser comparado. lhs pode ser uma referência a um HString.

rhs
O segundo parâmetro a ser comparado. rhs pode ser uma referência a um HString.

Valor de retorno

true se o parâmetro lhs for menor que o parâmetro rhs; caso contrário, false.

HString::Release

Exclui o valor da cadeia de caracteres subjacente e inicializa o objeto atual HString com um valor vazio.

void Release() throw()

HString::Set

Define o valor do objeto atual HString como a cadeia de caracteres largos ou o parâmetro HString especificados.

HRESULT Set(
          const wchar_t* str) throw();
HRESULT Set(
          const wchar_t* str,
          unsigned int len
           ) throw();
HRESULT Set(
          const HSTRING& hstr
           ) throw();

Parâmetros

str
Uma cadeia de caracteres largos.

len
O comprimento máximo do parâmetro str atribuído ao objeto atual HString.

hstr
Um objeto HString existente.