HStringReference, classe
Représente un HSTRING créé à partir d’une chaîne existante.
Syntaxe
class HStringReference;
Notes
La durée de vie de la mémoire tampon de stockage dans le nouveau HSTRING n’est pas gérée par Windows Runtime. L’appelant alloue une chaîne source sur le frame de pile pour éviter une allocation de tas et éliminer le risque d’une fuite de mémoire. En outre, l’appelant doit s’assurer que la chaîne source reste inchangée pendant la durée de vie du HSTRING attaché. Pour plus d’informations, consultez la fonction WindowsCreateStringReference.
Membres
Constructeurs publics
Nom | Description |
---|---|
HStringReference ::HStringReference | Initialise une nouvelle instance de la classe HStringReference . |
Méthodes publiques
Membre | Description |
---|---|
HStringReference ::CopyTo | Copie l’objet actuel HStringReference dans un objet HSTRING. |
HStringReference ::Get | Récupère la valeur du handle HSTRING sous-jacent. |
HStringReference ::GetRawBuffer | Récupère un pointeur vers les données de chaîne sous-jacentes. |
Opérateurs publics
Nom | Description |
---|---|
HStringReference ::operator= | Déplace la valeur d’un autre HStringReference objet vers l’objet actuel HStringReference . |
HStringReference ::operator== | Indique si les deux paramètres sont égaux. |
HStringReference ::operator != | Indique si les deux paramètres ne sont pas égaux. |
HStringReference::operator< |
Indique si le premier paramètre est inférieur au deuxième paramètre. |
Hiérarchie d'héritage
HStringReference
Spécifications
En-tête : corewrappers.h
Namespace : Microsoft ::WRL ::Wrappers
HStringReference ::CopyTo
Copie l’objet actuel HStringReference
dans un objet HSTRING.
HRESULT CopyTo(
_Out_ HSTRING *str
) const throw();
Paramètres
str
HSTRING qui reçoit la copie.
Notes
Cette méthode appelle la fonction WindowsDuplicateString .
HStringReference ::Get
Récupère la valeur du handle HSTRING sous-jacent.
HSTRING Get() const throw()
Valeur de retour
Valeur du handle HSTRING sous-jacent.
HStringReference ::GetRawBuffer
Récupère un pointeur vers les données de chaîne sous-jacentes.
const wchar_t* GetRawBuffer(unsigned int* length) const;
Paramètres
pointeur de longueur vers une int
variable qui reçoit la longueur des données.
Valeur de retour
Pointeur const
vers les données de chaîne sous-jacentes.
HStringReference ::HStringReference
Initialise une nouvelle instance de la 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();
Paramètres
sizeDest
Paramètre de modèle qui spécifie la taille de la mémoire tampon de destination HStringReference
.
str
Référence à une chaîne à caractères larges.
len
Longueur maximale de la mémoire tampon de paramètre str à utiliser dans cette opération. Si le paramètre len n’est pas spécifié, le paramètre str entier est utilisé. Si len est supérieur à sizeDest, len est défini sur sizeDest-1.
other
Autre HStringReference
objet.
Notes
Le premier constructeur initialise un nouvel HStringReference
objet dont la taille est identique à la str de paramètre.
Le deuxième constructeur initialise un nouvel HStringReference
objet que la taille specifeid par len de paramètre.
Le troisième constructeur initialise un nouvel HStringReference
objet à la valeur de l’autre paramètre, puis détruit l’autre paramètre.
HStringReference ::operator=
Déplace la valeur d’un autre HStringReference
objet vers l’objet actuel HStringReference
.
HStringReference& operator=(HStringReference&& other) throw()
Paramètres
other
Objet HStringReference
existant.
Notes
La valeur de l’autre objet existant est copiée dans l’objet actuelHStringReference
, puis l’autre objet est détruit.
HStringReference ::operator==
Indique si les deux paramètres sont égaux.
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()
Paramètres
Lhs
Premier paramètre à comparer. lhs peut être un HStringReference
objet ou un handle HSTRING.
rhs
Deuxième paramètre à comparer. rhs peut être un HStringReference
objet ou un handle HSTRING.
Valeur de retour
true
si les paramètres lhs et rhs sont égaux ; sinon, false
.
HStringReference ::operator !=
Indique si les deux paramètres ne sont pas égaux.
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()
Paramètres
Lhs
Premier paramètre à comparer. lhs peut être un HStringReference
objet ou un handle HSTRING.
rhs
Deuxième paramètre à comparer. rhs peut être un HStringReference
objet ou un handle HSTRING.
Valeur de retour
true
si les paramètres lhs et rhs ne sont pas égaux ; sinon, false
.
HStringReference::operator<
Indique si le premier paramètre est inférieur au deuxième paramètre.
inline bool operator<(
const HStringReference& lhs,
const HStringReference& rhs) throw()
Paramètres
Lhs
Premier paramètre à comparer. lhs peut être une référence à un HStringReference
.
rhs
Deuxième paramètre à comparer. rhs peut être une référence à un HStringReference
.
Valeur de retour
true
si le paramètre lhs est inférieur au paramètre rhs ; sinon, false
.