Condividi tramite


Classe HStringReference

Rappresenta un oggetto HSTRING creato da una stringa esistente.

Sintassi

class HStringReference;

Osservazioni:

La durata del buffer di backup nel nuovo HSTRING non è gestita da Windows Runtime. Il chiamante alloca una stringa di origine nel frame dello stack per evitare un'allocazione dell'heap ed eliminare il rischio di perdita di memoria. Inoltre, il chiamante deve garantire che la stringa di origine rimanga invariata durante la durata del HSTRING collegato. Per altre informazioni, vedere Funzione WindowsCreateStringReference.

Membri

Costruttori pubblici

Nome Descrizione
HStringReference::HStringReference Inizializza una nuova istanza della classe HStringReference.

Metodi pubblici

Membro Descrizione
HStringReference::CopyTo Copia l'oggetto corrente HStringReference in un oggetto HSTRING.
HStringReference::Get Recupera il valore dell'handle HSTRING sottostante.
HStringReference::GetRawBuffer Recupera un puntatore ai dati stringa sottostanti.

Operatori pubblici

Nome Descrizione
HStringReference::operator= Sposta il valore di un altro HStringReference oggetto nell'oggetto corrente HStringReference .
HStringReference::operator== Indica se i due parametri sono uguali.
HStringReference::operator!= Indica se i due parametri non sono uguali.
HStringReference::operator< Indica se il primo parametro è minore del secondo parametro.

Gerarchia di ereditarietà

HStringReference

Requisiti

Intestazione: corewrappers.h

Spazio dei nomi: Microsoft::WRL::Wrappers

HStringReference::CopyTo

Copia l'oggetto corrente HStringReference in un oggetto HSTRING.

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

Parametri

str
HSTRING che riceve la copia.

Osservazioni:

Questo metodo chiama la funzione WindowsDuplicateString .

HStringReference::Get

Recupera il valore dell'handle HSTRING sottostante.

HSTRING Get() const throw()

Valore restituito

Valore dell'handle HSTRING sottostante.

HStringReference::GetRawBuffer

Recupera un puntatore ai dati stringa sottostanti.

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

Parametri

length Puntatore a una int variabile che riceve la lunghezza dei dati.

Valore restituito

Puntatore const ai dati stringa sottostanti.

HStringReference::HStringReference

Inizializza una nuova istanza della classe 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();

Parametri

sizeDest
Parametro di modello che specifica le dimensioni del buffer di destinazione HStringReference .

str
Riferimento a una stringa di caratteri wide.

len
Lunghezza massima del buffer dei parametri str da usare in questa operazione. Se il parametro len non viene specificato, viene usato l'intero parametro str . Se len è maggiore di sizeDest, len è impostato su sizeDest-1.

other
Un altro HStringReference oggetto.

Osservazioni:

Il primo costruttore inizializza un nuovo HStringReference oggetto con le stesse dimensioni del parametro str.

Il secondo costruttore inizializza un nuovo HStringReference oggetto che specifica la dimensione specifica per parametro len.

Il terzo costruttore inizializza un nuovo HStringReference oggetto sul valore dell'altroparametro e quindi elimina definitivamente l'altro parametro.

HStringReference::operator=

Sposta il valore di un altro HStringReference oggetto nell'oggetto corrente HStringReference .

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

Parametri

other
Oggetto HStringReference esistente.

Osservazioni:

Il valore dell'altro oggetto esistente viene copiato nell'oggetto corrente HStringReference e quindi l'altrooggetto viene eliminato definitivamente.

HStringReference::operator==

Indica se i due parametri sono uguali.

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()

Parametri

Lhs
Primo parametro da confrontare. lhs può essere un HStringReference oggetto o un handle HSTRING.

rhs
Secondo parametro da confrontare. rhs può essere un HStringReference oggetto o un handle HSTRING.

Valore restituito

true se i parametri lhs e rhs sono uguali; in caso contrario, false.

HStringReference::operator!=

Indica se i due parametri non sono uguali.

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()

Parametri

Lhs
Primo parametro da confrontare. lhs può essere un HStringReference oggetto o un handle HSTRING.

rhs
Secondo parametro da confrontare. rhs può essere un HStringReference oggetto o un handle HSTRING.

Valore restituito

true se i parametri lhs e rhs non sono uguali; in caso contrario, false.

HStringReference::operator<

Indica se il primo parametro è minore del secondo parametro.

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

Parametri

Lhs
Primo parametro da confrontare. lhs può essere un riferimento a un oggetto HStringReference.

rhs
Secondo parametro da confrontare. rhs può essere un riferimento a un oggetto HStringReference.

Valore restituito

true se il parametro lhs è minore del parametro rhs ; in caso contrario, false.