Compartir a través de


HStringReference (Clase)

Representa un valor HSTRING que se crea a partir de una cadena existente.

Sintaxis

class HStringReference;

Comentarios

Windows Runtime no administra la duración del búfer de respaldo en el nuevo HSTRING. El autor de la llamada asigna una cadena de origen en el marco de pila para evitar una asignación de montón y para eliminar el riesgo de pérdida de memoria. Además, el autor de la llamada debe asegurarse de que la cadena de origen permanece sin cambios durante la vigencia del HSTRING asociado. Para obtener más información, vea la función WindowsCreateStringReference.

Miembros

Constructores públicos

Nombre Descripción
HStringReference::HStringReference Inicializa una nueva instancia de la clase HStringReference.

Métodos públicos

Miembro Descripción
HStringReference::CopyTo Copia el objeto HStringReference actual en un objeto HSTRING.
HStringReference::Get Recupera el valor del identificador HSTRING subyacente.
HStringReference::GetRawBuffer Recupera un puntero a los datos de cadena subyacentes.

Operadores públicos

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

Jerarquía de herencia

HStringReference

Requisitos

Encabezado: corewrappers.h

Espacio de nombres: Microsoft::WRL::Wrappers

HStringReference::CopyTo

Copia el objeto HStringReference 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.

HStringReference::Get

Recupera el valor del identificador HSTRING subyacente.

HSTRING Get() const throw()

Valor devuelto

Valor del identificador HSTRING subyacente.

HStringReference::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.

HStringReference::HStringReference

Inicializa una nueva instancia de la clase HStringReference.

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

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

HStringReference(HStringReference&& other) throw();

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. Si len es mayor que sizeDest, len se establece en sizeDest-1.

other
Otro objeto HStringReference.

Comentarios

El primer constructor inicializa un nuevo objeto HStringReference que tiene el mismo tamaño que el parámetro str.

El segundo constructor inicializa un nuevo objeto HStringReference respecto al tamaño especificado por el parámetro len.

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

HStringReference::operator=

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

HStringReference& operator=(HStringReference&& other) throw()

Parámetros

other
Objeto HStringReference existente.

Comentarios

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

HStringReference::operator==

Indica si los dos parámetros son iguales.

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

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

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

Parámetros

lhs
Primer parámetro que se compara. lhs puede ser un objeto HStringReference o un identificador HSTRING.

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

Valor devuelto

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

HStringReference::operator!=

Indica si los dos parámetros no son iguales.

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

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

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

Parámetros

lhs
Primer parámetro que se compara. lhs puede ser un objeto HStringReference o un identificador HSTRING.

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

Valor devuelto

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

HStringReference::operator<

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

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

Parámetros

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

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

Valor devuelto

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