HStringReference-Klasse

Stellt ein HSTRING dar, das aus einer vorhandenen Zeichenfolge erstellt wird.

Syntax

class HStringReference;

Hinweise

Die Lebensdauer des Sicherungspuffers im neuen HSTRING wird nicht vom Windows-Runtime verwaltet. Der Aufrufer ordnet eine Quellzeichenfolge auf dem Stapelrahmen zu, um eine Heapzuweisung zu vermeiden und das Risiko eines Speicherverlusts auszuschließen. Außerdem muss der Aufrufer sicherstellen, dass die Quellzeichenfolge während der Lebensdauer des angefügten HSTRING unverändert bleibt. Weitere Informationen finden Sie unter WindowsCreateStringReference-Funktion.

Member

Öffentliche Konstruktoren

Name Beschreibung
HStringReference::HStringReference Initialisiert eine neue Instanz der HStringReference-Klasse.

Öffentliche Methoden

Member Beschreibung
HStringReference::CopyTo Kopiert das aktuelle HStringReference Objekt in ein HSTRING-Objekt.
HStringReference::Get Ruft den Wert des zugrunde liegenden HSTRING-Handles ab.
HStringReference::GetRawBuffer Ruft einen Zeiger auf die zugrunde liegenden Zeichenfolgendaten ab.

Öffentliche Operatoren

Name Beschreibung
HStringReference::operator= Verschiebt den Wert eines anderen HStringReference Objekts in das aktuelle HStringReference Objekt.
HStringReference::operator== Gibt an, ob die zwei Parameter gleich sind.
HStringReference::operator!= Gibt an, ob die zwei Parameter ungleich sind.
HStringReference::operator< Gibt an, ob der erste Parameter kleiner als der zweite Parameter ist.

Vererbungshierarchie

HStringReference

Anforderungen

Kopfzeile: corewrappers.h

Namespace: Microsoft::WRL::Wrapper

HStringReference::CopyTo

Kopiert das aktuelle HStringReference Objekt in ein HSTRING-Objekt.

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

Parameter

str
Das HSTRING, das die Kopie erhält.

Hinweise

Diese Methode ruft die WindowsDuplicateString-Funktion auf.

HStringReference::Get

Ruft den Wert des zugrunde liegenden HSTRING-Handles ab.

HSTRING Get() const throw()

Rückgabewert

Der Wert des zugrunde liegenden HSTRING-Handles.

HStringReference::GetRawBuffer

Ruft einen Zeiger auf die zugrunde liegenden Zeichenfolgendaten ab.

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

Parameter

length Pointer to an int variable that receives the length of the data.

Rückgabewert

Ein const Zeiger auf die zugrunde liegenden Zeichenfolgendaten.

HStringReference::HStringReference

Initialisiert eine neue Instanz der HStringReference-Klasse.

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

Parameter

sizeDest
Ein Vorlagenparameter, der die Größe des Zielpuffers HStringReference angibt.

str
Ein Verweis auf eine breite Zeichenfolge.

len
Die maximale Länge des str-Parameterpuffers, der in diesem Vorgang verwendet werden soll. Wenn der len-Parameter nicht angegeben ist, wird der gesamte str-Parameter verwendet. Wenn "len " größer als "sizeDest" ist, wird "len " auf "sizeDest-1" festgelegt.

sonstige
Ein weiteres HStringReference Objekt.

Hinweise

Der erste Konstruktor initialisiert ein neues HStringReference Objekt, das dieselbe Größe wie parameter str hat.

Der zweite Konstruktor initialisiert ein neues HStringReference Objekt, das die Größenangabe nach Parameter len angibt.

Der dritte Konstruktor initialisiert ein neues HStringReference Objekt auf den Wert des anderen Parameters und zerstört dann den anderen Parameter.

HStringReference::operator=

Verschiebt den Wert eines anderen HStringReference Objekts in das aktuelle HStringReference Objekt.

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

Parameter

sonstige
Ein vorhandenes HStringReference-Objekt.

Hinweise

Der Wert des vorhandenen anderen Objekts wird in das aktuelle HStringReference Objekt kopiert, und dann wird das andere Objekt zerstört.

HStringReference::operator==

Gibt an, ob die zwei Parameter gleich sind.

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

Parameter

Lhs
Der erste zu vergleichende Parameter. lhs kann ein HStringReference Objekt oder ein HSTRING-Handle sein.

rhs
Der zweite zu vergleichende Parameter. rhs kann ein HStringReference Objekt oder ein HSTRING-Handle sein.

Rückgabewert

truewenn die Parameter lhs und rhs gleich sind; andernfalls . false

HStringReference::operator!=

Gibt an, ob die zwei Parameter ungleich sind.

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

Parameter

Lhs
Der erste zu vergleichende Parameter. lhs kann ein HStringReference Objekt oder ein HSTRING-Handle sein.

rhs
Der zweite zu vergleichende Parameter. rhs kann ein HStringReference Objekt oder ein HSTRING-Handle sein.

Rückgabewert

truewenn die Parameter lhs und rhs nicht gleich sind; andernfalls . false

HStringReference::operator<

Gibt an, ob der erste Parameter kleiner als der zweite Parameter ist.

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

Parameter

Lhs
Der erste zu vergleichende Parameter. lhs kann ein Verweis auf ein HStringReference.

rhs
Der zweite zu vergleichende Parameter. rhs kann ein Verweis auf ein HStringReference.

Rückgabewert

truewenn der lhs-Parameter kleiner als der rhs-Parameter ist; andernfalls . false