Classe HString
Classe helper per la gestione della durata di un HSTRING usando il modello RAII.
Sintassi
class HString;
Osservazioni:
Windows Runtime fornisce l'accesso alle stringhe tramite handle HSTRING . La HString
classe fornisce funzioni e operatori pratici per semplificare l'uso degli handle HSTRING. Questa classe può gestire la durata dell'HSTRING di proprietà tramite un modello RAII.
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
HString::HString | Inizializza una nuova istanza della classe HString . |
HString::~HString | Elimina definitivamente l'istanza corrente della HString classe . |
Metodi pubblici
Nome | Descrizione |
---|---|
HString::Attach | Associa l'oggetto specificato HString all'oggetto corrente HString . |
HString::CopyTo | Copia l'oggetto corrente HString in un oggetto HSTRING. |
HString::D etach | Annulla l'associazione dell'oggetto specificato HString dal valore sottostante. |
HString::Get | Recupera il valore dell'handle HSTRING sottostante. |
HString::GetAddressOf | Recupera un puntatore all'handle HSTRING sottostante. |
HString::GetRawBuffer | Recupera un puntatore ai dati stringa sottostanti. |
HString::IsValid | Indica se l'oggetto corrente HString è valido. |
HString::MakeReference | Crea un HStringReference oggetto da un parametro stringa specificato. |
HString::Release | Elimina il valore stringa sottostante e inizializza l'oggetto corrente HString in un valore vuoto. |
HString::Set | Imposta il valore dell'oggetto corrente HString sulla stringa o HString sul parametro di caratteri wide specificato. |
Operatori pubblici
Nome | Descrizione |
---|---|
HString::operator= | Sposta il valore di un altro HString oggetto nell'oggetto corrente HString . |
HString::operator== | Indica se i due parametri sono uguali. |
HString::operator!= | Indica se i due parametri non sono uguali. |
HString::operator< |
Indica se il primo parametro è minore del secondo parametro. |
Gerarchia di ereditarietà
HString
Requisiti
Intestazione: corewrappers.h
Spazio dei nomi: Microsoft::WRL::Wrappers
HString::~HString
Elimina definitivamente l'istanza corrente della HString
classe .
~HString() throw()
HString::Attach
Associa l'oggetto specificato HString
all'oggetto corrente HString
.
void Attach(
HSTRING hstr
) throw()
Parametri
hstr
Oggetto HString
esistente.
HString::CopyTo
Copia l'oggetto corrente HString
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 .
HString::D etach
Annulla l'associazione dell'oggetto specificato HString
dal valore sottostante.
HSTRING Detach() throw()
Valore restituito
Valore sottostante HString
prima dell'avvio dell'operazione di scollegamento.
HString::Get
Recupera il valore dell'handle HSTRING sottostante.
HSTRING Get() const throw()
Valore restituito
Valore dell'handle HSTRING sottostante
HString::GetAddressOf
Recupera un puntatore all'handle HSTRING sottostante.
HSTRING* GetAddressOf() throw()
Valore restituito
Puntatore all'handle HSTRING sottostante.
Osservazioni:
Dopo questa operazione, il valore stringa dell'handle HSTRING sottostante viene eliminato definitivamente.
HString::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.
HString::HString
Inizializza una nuova istanza della classe HString
.
HString() throw();
HString(HString&& other) throw();
Parametri
hstr
Handle HSTRING.
other
Oggetto HString
esistente.
Osservazioni:
Il primo costruttore inizializza un nuovo HString
oggetto vuoto.
Il secondo costruttore inizializza un nuovo HString
oggetto sul valore dell'altro parametro esistente e quindi elimina definitivamente l'altro parametro.
HString::IsValid
Indica se l'oggetto corrente HString
è vuoto o meno.
bool IsValid() const throw()
Parametri
true
se l'oggetto corrente HString
non è vuoto; in caso contrario, false
.
HString::MakeReference
Crea un HStringReference
oggetto da un parametro stringa specificato.
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);
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 .
Valore restituito
Oggetto HStringReference
il cui valore è uguale al parametro str specificato.
Operatore HString::operator=
Sposta il valore di un altro HString
oggetto nell'oggetto corrente HString
.
HString& operator=(HString&& other) throw()
Parametri
other
Oggetto HString
esistente.
Osservazioni:
Il valore dell'altro oggetto esistente viene copiato nell'oggetto corrente HString
e quindi l'altro oggetto viene eliminato definitivamente.
Operatore HString::operator==
Indica se i due parametri sono uguali.
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()
Parametri
Lhs
Primo parametro da confrontare. lhs può essere un HString
oggetto o HStringReference
o un handle HSTRING.
rhs
Secondo parametro da confrontare.rhs può essere un HString
oggetto o HStringReference
o un handle HSTRING.
Valore restituito
true
se i parametri lhs e rhs sono uguali; in caso contrario, false
.
Operatore HString::operator!=
Indica se i due parametri non sono uguali.
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()
Parametri
Lhs
Primo parametro da confrontare. lhs può essere un HString
oggetto o HStringReference
o un handle HSTRING.
rhs
Secondo parametro da confrontare.rhs può essere un HString
oggetto o HStringReference
o un handle HSTRING.
Valore restituito
true
se i parametri lhs e rhs non sono uguali; in caso contrario, false
.
Operatore HString::operator<
Indica se il primo parametro è minore del secondo parametro.
inline bool operator<(
const HString& lhs,
const HString& rhs) throw()
Parametri
Lhs
Primo parametro da confrontare. lhs può essere un riferimento a un oggetto HString
.
rhs
Secondo parametro da confrontare. rhs può essere un riferimento a un oggetto HString
.
Valore restituito
true
se il parametro lhs è minore del parametro rhs ; in caso contrario, false
.
HString::Release
Elimina il valore stringa sottostante e inizializza l'oggetto corrente HString
in un valore vuoto.
void Release() throw()
HString::Set
Imposta il valore dell'oggetto corrente HString
sulla stringa o HString
sul parametro di caratteri wide specificato.
HRESULT Set(
const wchar_t* str) throw();
HRESULT Set(
const wchar_t* str,
unsigned int len
) throw();
HRESULT Set(
const HSTRING& hstr
) throw();
Parametri
str
Stringa di caratteri wide.
len
Lunghezza massima del parametro str assegnato all'oggetto corrente HString
.
hstr
Oggetto HString
esistente.