Compartir a través de


HString (Clase)

Clase auxiliar para administrar la duración de un HSTRING mediante el patrón RAII.

Sintaxis

class HString;

Comentarios

Windows Runtime proporciona acceso a las cadenas a través de identificadores HSTRING. La clase HString proporciona funciones y operadores útiles para simplificar el uso de identificadores HSTRING. Esta clase puede controlar la duración del objeto HSTRING que posee a través de un patrón RAII.

Miembros

Constructores públicos

Nombre Descripción
HString::HString Inicializa una nueva instancia de la clase HString.
HString::~HString Destruye la instancia actual de la clase HString.

Métodos públicos

Nombre Descripción
HString::Attach Asocia el objeto HString especificado al objeto HString actual.
HString::CopyTo Copia el objeto HString actual en un objeto HSTRING.
HString::Detach Desasocia el objeto HString especificado de su valor subyacente.
HString::Get Recupera el valor del identificador HSTRING subyacente.
HString::GetAddressOf Recupera un puntero al identificador HSTRING subyacente.
HString::GetRawBuffer Recupera un puntero a los datos de cadena subyacentes.
HString::IsValid Indica si el objeto HString actual es válido.
HString::MakeReference Crea un objeto HStringReference a partir de un parámetro de cadena especificado.
HString::Release Elimina el valor de cadena subyacente e inicializa el objeto actual HString en un valor vacío.
HString::Set Establece el valor del objeto HString actual en la cadena de caracteres anchos o el parámetro HString especificados.

Operadores públicos

Nombre Descripción
HString::operator= Mueve el valor de otro objeto HString al objeto HString actual.
HString::operator== Indica si los dos parámetros son iguales.
HString::operator!= Indica si los dos parámetros no son iguales.
HString::operator< Indica si el primer parámetro es menor que el segundo.

Jerarquía de herencia

HString

Requisitos

Encabezado: corewrappers.h

Espacio de nombres: Microsoft::WRL::Wrappers

HString::~HString

Destruye la instancia actual de la clase HString.

~HString() throw()

HString::Attach

Asocia el objeto HString especificado al objeto HString actual.

void Attach(
       HSTRING hstr
       ) throw()

Parámetros

hstr
Objeto HString existente.

HString::CopyTo

Copia el objeto HString actual en un objeto HSTRING.

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

Parámetros

str
HSTRING que recibe la copia.

Comentarios

Este método llama a la función WindowsDuplicateString.

HString::Detach

Desasocia el objeto HString especificado de su valor subyacente.

HSTRING Detach() throw()

Valor devuelto

Valor HString subyacente antes de que se inicie la operación de desasociación.

HString::Get

Recupera el valor del identificador HSTRING subyacente.

HSTRING Get() const throw()

Valor devuelto

Valor del identificador HSTRING subyacente

HString::GetAddressOf

Recupera un puntero al identificador HSTRING subyacente.

HSTRING* GetAddressOf() throw()

Valor devuelto

Puntero al identificador HSTRING subyacente.

Comentarios

Después de esta operación, se destruye el valor de cadena del identificador HSTRING subyacente.

HString::GetRawBuffer

Recupera un puntero a los datos de cadena subyacentes.

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

Parámetros

length Puntero a una variable int que recibe la longitud de los datos.

Valor devuelto

Puntero const a los datos de cadena subyacentes.

HString::HString

Inicializa una nueva instancia de la clase HString.

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

Parámetros

hstr
Un identificador HSTRING.

other
Objeto HString existente.

Comentarios

El primer constructor inicializa un nuevo objeto HString que está vacío.

El segundo constructor inicializa un nuevo objeto HString en el valor del parámetro other existente y, a continuación, destruye el parámetro other.

HString::IsValid

Indica si el objeto HString actual está vacío o no.

bool IsValid() const throw()

Parámetros

true si el objeto HString actual no está vacío; de lo contrario, false.

HString::MakeReference

Crea un objeto HStringReference a partir de un parámetro de cadena 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
Parámetro de plantilla que especifica el tamaño del búfer de destino HStringReference.

str
Referencia a una cadena de caracteres anchos.

len
Longitud máxima del búfer de parámetros str que se va a usar en esta operación. Si no se especifica el parámetro len, se usa todo el parámetro str.

Valor devuelto

Objeto HStringReference cuyo valor es el mismo que el parámetro str especificado.

HString::Operator!= (Operador)

Mueve el valor de otro objeto HString al objeto HString actual.

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

Parámetros

other
Objeto HString existente.

Comentarios

El valor del objeto existente other se copia en el objeto HString actual y, a continuación, se destruye el objeto other.

HString::Operator!= (Operador)

Indica si los dos parámetros son iguales.

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
Primer parámetro que se compara. lhs puede ser un objeto HString o HStringReference o un identificador HSTRING.

rhs
Segundo parámetro que se va a comparar. rhs puede ser un objeto HString o HStringReference o un identificador HSTRING.

Valor devuelto

true si los parámetros lhs y rhs son iguales; en caso contrario, false.

HString::Operator!= (Operador)

Indica si los dos parámetros no son iguales.

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
Primer parámetro que se compara. lhs puede ser un objeto HString o HStringReference o un identificador HSTRING.

rhs
Segundo parámetro que se va a comparar. rhs puede ser un objeto HString o HStringReference o un identificador HSTRING.

Valor devuelto

true si los parámetros lhs y rhs no son iguales; en caso contrario, false.

Operador HString::operator<

Indica si el primer parámetro es menor que el segundo.

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

Parámetros

lhs
Primer parámetro que se compara. lhs puede ser una referencia a HString.

rhs
Segundo parámetro que se va a comparar. rhs puede ser una referencia a HString.

Valor devuelto

true si el parámetro lhs es menor que el parámetro rhs; de lo contrario, false.

HString::Release

Elimina el valor de cadena subyacente e inicializa el objeto HString actual en un valor vacío.

void Release() throw()

HString::Set

Establece el valor del objeto HString actual en la cadena de caracteres anchos o el 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
Cadena de caracteres anchos.

len
Longitud máxima del parámetro str asignado al objeto HString actual.

hstr
Objeto HString existente.