HString – třída
Pomocná třída pro správu životnosti HSTRING pomocí vzoru RAII.
Syntaxe
class HString;
Poznámky
Prostředí Windows Runtime poskytuje přístup k řetězcům prostřednictvím popisovačů HSTRING. Třída HString
poskytuje pohodlné funkce a operátory pro zjednodušení pomocí úchytů HSTRING. Tato třída dokáže zpracovat životnost HSTRING, který vlastní prostřednictvím vzoru RAII.
Členové
Veřejné konstruktory
Název | Popis |
---|---|
HString::HString | Inicializuje novou instanci HString třídy. |
HString::~HString | Zničí aktuální instanci HString třídy. |
Veřejné metody
Název | Popis |
---|---|
HString::Attach | Přidruží zadaný HString objekt k aktuálnímu HString objektu. |
HString::CopyTo | Zkopíruje aktuální HString objekt do objektu HSTRING. |
HString::D etach | Oddružuje zadaný HString objekt od jeho podkladové hodnoty. |
HString::Get | Načte hodnotu podkladového popisovače HSTRING. |
HString::GetAddressOf | Načte ukazatel na podkladový popisovač HSTRING. |
HString::GetRawBuffer | Načte ukazatel na podkladová řetězcová data. |
HString::IsValid | Určuje, zda je aktuální HString objekt platný. |
HString::MakeReference | HStringReference Vytvoří objekt ze zadaného řetězcového parametru. |
HString::Release | Odstraní základní řetězcovou hodnotu a inicializuje aktuální HString objekt na prázdnou hodnotu. |
HString::Set | Nastaví hodnotu aktuálního HString objektu na zadaný řetězec nebo HString parametr s širokým znakem. |
Veřejné operátory
Název | Popis |
---|---|
HString::operator= | Přesune hodnotu jiného HString objektu na aktuální HString objekt. |
HString::operator== | Určuje, zda jsou oba parametry stejné. |
HString::operator!= | Určuje, jestli se oba parametry nerovnají. |
HString::operator< |
Určuje, zda je první parametr menší než druhý parametr. |
Hierarchie dědičnosti
HString
Požadavky
Hlavička: corewrappers.h
Obor názvů: Microsoft::WRL::Wrappers
HString::~HString
Zničí aktuální instanci HString
třídy.
~HString() throw()
HString::Attach
Přidruží zadaný HString
objekt k aktuálnímu HString
objektu.
void Attach(
HSTRING hstr
) throw()
Parametry
hstr
Existující objekt HString
.
HString::CopyTo
Zkopíruje aktuální HString
objekt do objektu HSTRING.
HRESULT CopyTo(
_Out_ HSTRING *str
) const throw();
Parametry
Str
HSTRING, který obdrží kopii.
Poznámky
Tato metoda volá funkci WindowsDuplicateString .
HString::D etach
Oddružuje zadaný HString
objekt od jeho podkladové hodnoty.
HSTRING Detach() throw()
Návratová hodnota
Podkladová HString
hodnota před zahájením operace odpojení.
HString::Get
Načte hodnotu podkladového popisovače HSTRING.
HSTRING Get() const throw()
Návratová hodnota
Hodnota podkladového úchytu HSTRING
HString::GetAddressOf
Načte ukazatel na podkladový popisovač HSTRING.
HSTRING* GetAddressOf() throw()
Návratová hodnota
Ukazatel na podkladový úchyt HSTRING.
Poznámky
Po této operaci je řetězcová hodnota podkladového popisovače HSTRING zničena.
HString::GetRawBuffer
Načte ukazatel na podkladová řetězcová data.
const wchar_t* GetRawBuffer(unsigned int* length) const;
Parametry
length Pointer to an int
variable that receive the length of the data.
Návratová hodnota
const
Ukazatel na podkladová řetězcová data.
HString::HString
Inicializuje novou instanci HString
třídy.
HString() throw();
HString(HString&& other) throw();
Parametry
hstr
Úchyt HSTRING.
jiný
Existující objekt HString
.
Poznámky
První konstruktor inicializuje nový HString
objekt, který je prázdný.
Druhý konstruktor inicializuje nový HString
objekt na hodnotu existujícího jiného parametru a pak zničí druhý parametr.
HString::IsValid
Určuje, zda je aktuální HString
objekt prázdný nebo ne.
bool IsValid() const throw()
Parametry
true
pokud aktuální HString
objekt není prázdný; v opačném případě false
.
HString::MakeReference
HStringReference
Vytvoří objekt ze zadaného řetězcového parametru.
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);
Parametry
sizeDest
Parametr šablony, který určuje velikost cílové HStringReference
vyrovnávací paměti.
Str
Odkaz na řetězec širokého znaku.
Len
Maximální délka vyrovnávací paměti parametru str , která se má použít v této operaci. Pokud není zadaný parametr délka, použije se celý parametr str.
Návratová hodnota
Objekt HStringReference
, jehož hodnota je stejná jako zadaný parametr str .
HString::operator= – operátor
Přesune hodnotu jiného HString
objektu na aktuální HString
objekt.
HString& operator=(HString&& other) throw()
Parametry
jiný
Existující objekt HString
.
Poznámky
Hodnota existujícího jiného objektu se zkopíruje do aktuálního HString
objektu a druhý objekt se zničí.
HString::operator== – operátor
Určuje, zda jsou oba parametry stejné.
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()
Parametry
Lhs
První parametr, který se má porovnat. lhs může být objekt HString
HStringReference
nebo úchyt HSTRING.
rhs
Druhý parametr, který se má porovnat.Rhs může být objekt HString
nebo HStringReference
úchyt HSTRING.
Návratová hodnota
true
jsou-li parametry lhs a rhs stejné; jinak, false
.
HString::operator!= – operátor
Určuje, jestli se oba parametry nerovnají.
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()
Parametry
Lhs
První parametr, který se má porovnat. lhs může být objekt HString
HStringReference
nebo úchyt HSTRING.
rhs
Druhý parametr, který se má porovnat.Rhs může být objekt HString
nebo HStringReference
úchyt HSTRING.
Návratová hodnota
true
pokud parametry lhs a rhs nejsou stejné; jinak, false
.
HString::operator<
– operátor
Určuje, zda je první parametr menší než druhý parametr.
inline bool operator<(
const HString& lhs,
const HString& rhs) throw()
Parametry
Lhs
První parametr, který se má porovnat. lhs může být odkaz na .HString
rhs
Druhý parametr, který se má porovnat. rhs může být odkaz na .HString
Návratová hodnota
true
pokud je parametr lhs menší než parametr rhs; v opačném případě . false
HString::Release
Odstraní základní řetězcovou hodnotu a inicializuje aktuální HString
objekt na prázdnou hodnotu.
void Release() throw()
HString::Set
Nastaví hodnotu aktuálního HString
objektu na zadaný řetězec nebo HString
parametr s širokým znakem.
HRESULT Set(
const wchar_t* str) throw();
HRESULT Set(
const wchar_t* str,
unsigned int len
) throw();
HRESULT Set(
const HSTRING& hstr
) throw();
Parametry
Str
Řetězec širokého znaku.
Len
Maximální délka parametru str , který je přiřazen k aktuálnímu HString
objektu.
hstr
Existující objekt HString
.