winrt::hstring struct (C++/WinRT)
Eine sequenzielle Auflistung von UTF-16 Unicode-Zeichen, die eine Textzeichenfolge darstellen. Weitere Beispiele und Informationen zu winrt::hstringfinden Sie unter Zeichenfolgenbehandlung in C++/WinRT.
Der winrt::hstring Typ kapselt HSTRING hinter einer Schnittstelle, die der std::wstringähnelt. Ein HSTRING- ist ein Handle für eine Windows-Runtime-Zeichenfolge. Informationen zum Festlegen eines HSTRING- in eine winrt::hstring-und zum Abrufen eines HSTRING- aus einem winrt::hstring-finden Sie unter Interoperating with the ABI's HSTRING.
Syntax
struct hstring
Anforderungen
Mindestens unterstützte SDK: Windows SDK, Version 10.0.17134.0 (Windows 10, Version 1803)
Namespace: winrt
Header: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (standardmäßig enthalten)
Membertypaliasen
Aliasname | Art |
---|---|
hstring::value_type | Ein Synonym für wchar_t. |
hstring::size_type | Ein Synonym für uint32_t. |
hstring::const_reference | Ein Synonym für hstring::value_type const&. |
hstring::const_pointer | Ein Synonym für hstring::value_type const*. |
hstring::const_iterator | Ein Synonym für hstring::const_pointer. |
hstring::const_reverse_iterator | Ein Synonym für std::reverse_iterator<hstring::const_iterator>. |
Erbauer
Konstruktor | Beschreibung |
---|---|
hstring::hstring-Konstruktor | Initialisiert eine neue Instanz der hstring Struktur mit einer Kopie der Eingabezeichenfolgendaten. |
Memberfunktionen
Funktion | Beschreibung |
---|---|
hstring::Back-Funktion | Gibt einen Verweis auf das letzte Zeichen im hstring- -Objekt zurück. |
hstring::begin-Funktion | Gibt einen Konst iterator an das erste Zeichen im hstring -Objekt zurück. |
hstring::c_str-Funktion | Gibt einen Zeiger auf die zugrunde liegende null-beendete C-Formatzeichenfolge der Zeichen im hstring- -Objekt zurück; es wird keine Kopie erstellt. |
hstring::cbegin function | Gibt einen Konst iterator an das erste Zeichen im hstring -Objekt zurück. |
hstring::cend-Funktion | Gibt einen Konst iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück. |
hstring::clear-Funktion | Macht das Objekt leer. |
hstring::crbegin function | Gibt einen umgekehrten Iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück. |
hstring::crend function | Gibt einen umgekehrten Iterator zum ersten Zeichen im hstring -Objekt zurück. |
hstring::d ata-Funktion | Gibt eine Zeichenfolgenversion des Typs C-Zeichenfolgen im hstring- -Objekts zurück. |
hstring::empty function | Gibt einen Wert zurück, der angibt, ob das Objekt leer ist. |
hstring::end function | Gibt einen Konst iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück. |
hstring::front function | Gibt einen Verweis auf das erste Zeichen im hstring- -Objekt zurück. |
hstring::rbegin function | Gibt einen umgekehrten Iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück. |
hstring::rend-Funktion | Gibt einen umgekehrten Iterator zum ersten Zeichen im hstring -Objekt zurück. |
hstring::size-Funktion | Gibt die Anzahl der Zeichen im hstring- -Objekt zurück. |
Memberoperatoren
Operator | Beschreibung |
---|---|
hstring::operator std::wstring_view | Konvertiert das hstring-objekt in ein std::wstring_view. |
hstring::operator[] (tiefgestellter Operator)) | Gibt einen Verweis auf das Zeichen an der angegebenen Position innerhalb des hstring -Objekts zurück. |
hstring::operator= (Zuordnungsoperator) | Weist dem hstring- -Objekt einen Wert zu. |
Kostenlose Funktionen
Funktion | Beschreibung |
---|---|
attach_abi-Funktion | Fügt ein hstring- -Objekt an ein Handle an eine Windows-Runtime-Zeichenfolge an. |
copy_from_abi Funktion | Kopiert in ein hstring- -Objekt von einem Handle in eine Windows-Runtime-Zeichenfolge. Löscht die hstring-, kopiert den Parameter und beginnt mit der Verwaltung des Handles. |
copy_to_abi Funktion | Kopiert ein Handle in eine Windows-Runtime-Zeichenfolge aus einem hstring--Objekt. |
detach_abi Funktion | Trennt ein hstring- Objekt vom Handle, um es vielleicht an einen Aufrufer zurückzugeben. |
to_hstring-Funktion | Wandelt einen Eingabewert in eine winrt::hstring um, die die Zeichenfolgendarstellung des Werts enthält. |
Kostenlose Betreiber
Operator | Beschreibung |
---|---|
Operator!= (Ungleichheitsoperator) | Gibt einen Wert zurück, der angibt, ob die beiden Parameter ungleich zueinander sind. |
Operator+ (Verkettungsoperator) | Gibt ein neues hstring- -Objekt zurück, das sich aus der Verkettung der beiden Parameter ergibt. |
Operator< (kleiner als Operator) | Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner als der zweite Parameter ist. |
Operator<= (kleiner-als-oder-gleich-operator) | Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner oder gleich dem zweiten Parameter ist. |
Operator== (Gleichheitsoperator) | Gibt einen Wert zurück, der angibt, ob die beiden Parameter gleicheinander sind. |
Operator> (Größer-als-Operator) | Gibt einen Wert zurück, der angibt, ob der erste Parameter größer als der zweite Parameter ist. |
Operator>= (größer-oder-gleich-operator) | Gibt einen Wert zurück, der angibt, ob der erste Parameter größer oder gleich dem zweiten Parameter ist. |
Iteratoren
Eine hstring- ist ein Bereich, und dieser Bereich wird durch die hstring::begin und hstring::end Memberfunktionen definiert, die jeweils einen Const iterator (wie hstring::cbegin und hstring::cend). Aus diesem Grund können Sie die Zeichen in einem hstring--Objekt mit einer bereichsbasierten for
-Anweisung oder mit der std::for_each-Vorlagenfunktion aufzählen.
#include <iostream>
using namespace winrt;
...
void Iterators(hstring const& theHstring)
{
for (auto const& element : theHstring)
{
std::wcout << element;
}
std::for_each(theHstring.cbegin(), theHstring.cend(), [](T const& element) { std::wcout << element; });
}
hstring::hstring-Konstruktor
Initialisiert eine neue Instanz der hstring Struktur mit einer Kopie der Eingabezeichenfolgendaten.
Syntax
hstring() noexcept;
hstring(winrt::hstring const& h);
explicit hstring(std::wstring_view const& v);
hstring(wchar_t const* c);
hstring(wchar_t const* c, uint32_t s);
Parameter
h
Ein hstring- Wert, der das hstring--Objekt initialisiert.
v
A std::wstring_view-Wert, der das hstring--Objekt initialisiert.
c
Ein Zeiger auf ein Array konstanter wchar_t, das das hstring--Objekt initialisiert.
s
Eine Zahl, die eine feste Größe für das hstring--Objekt angibt.
Beispiel
using namespace winrt;
...
void Constructors(
hstring const& theHstring,
std::wstring_view const& theWstringView,
wchar_t const* wideLiteral,
std::wstring const& wideString)
{
// hstring() noexcept
hstring fromDefault{};
// hstring(hstring const& h)
hstring fromHstring{ theHstring };
// explicit hstring(std::wstring_view const& value)
hstring fromWstringView{ theWstringView };
// hstring(wchar_t const* value)
hstring fromWideLiteral{ wideLiteral };
hstring fromWideString{ wideString.c_str() };
// hstring(wchar_t const* value, uint32_t size)
hstring fromWideLiteralWithSize{ wideLiteral, 256 };
hstring fromWideStringWithSize{ wideString.c_str(), 256 };
}
hstring::Back-Funktion
Gibt einen Verweis auf das letzte Zeichen im hstring- -Objekt zurück.
Syntax
wchar_t const& back() const noexcept;
Rückgabewert
Ein Verweis auf das letzte Zeichen im hstring--Objekt.
hstring::begin-Funktion
Gibt einen Konst iterator an das erste Zeichen im hstring -Objekt zurück. Siehe Iteratoren.
Syntax
wchar_t const* begin() const noexcept;
Rückgabewert
Ein Konerator zum ersten Zeichen im hstring--Objekt.
hstring::c_str-Funktion
Gibt einen Zeiger auf die zugrunde liegende null-beendete C-Formatzeichenfolge der Zeichen im hstring- -Objekt zurück; es wird keine Kopie erstellt.
Syntax
wchar_t const* c_str() const noexcept;
Rückgabewert
Ein Zeiger auf die zugrunde liegende C-Formatvorlage mit Null beendeter Zeichenfolge der Zeichen im hstring--Objekt; es wird keine Kopie erstellt.
Beispiel
#include <iostream>
using namespace winrt;
...
void PrintHstring(hstring const& theHstring)
{
// You can get a standard wide string from an hstring.
std::wcout << theHstring.c_str() << std::endl;
}
hstring::cbegin-Funktion
Gibt einen Konst iterator an das erste Zeichen im hstring -Objekt zurück. Siehe Iteratoren.
Syntax
wchar_t const* cbegin() const noexcept;
Rückgabewert
Ein Konerator zum ersten Zeichen im hstring--Objekt.
hstring::cend-Funktion
Gibt einen Konst iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück. Siehe Iteratoren.
Syntax
wchar_t const* cend() const noexcept;
Rückgabewert
Ein Konerator auf eins über das Ende (eines über das letzte Zeichen hinaus) des hstring- Objekts.
hstring::clear-Funktion
Macht das Objekt leer.
Syntax
void clear() noexcept;
hstring::crbegin-Funktion
Gibt einen umgekehrten Iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück.
Syntax
std::reverse_iterator<wchar_t const*> crbegin() const noexcept;
Rückgabewert
Ein konst reverse iterator to one beyond the end of (one beyond the last character in) the hstring object.
hstring::crend function
Gibt einen umgekehrten Iterator zum ersten Zeichen im hstring -Objekt zurück.
Syntax
std::reverse_iterator<wchar_t const*> crend() const noexcept;
Rückgabewert
Ein konst reverse iterator to the first character in the hstring object.
hstring::d ata-Funktion
Gibt eine Zeichenfolgenversion des Typs C-Zeichenfolgen im hstring- -Objekts zurück.
Syntax
wchar_t const* data() const noexcept;
Rückgabewert
Eine Zeichenfolgenversion im C-Format mit Nullen im hstring--Objekt.
Beispiel
#include <iostream>
using namespace winrt;
...
void PrintHstring(hstring const& theHstring)
{
// You can get a standard wide string from an hstring.
std::wcout << theHstring.data() << std::endl;
}
hstring::empty-Funktion
Gibt einen Wert zurück, der angibt, ob das Objekt leer ist.
Syntax
bool empty() const noexcept;
Rückgabewert
true
, wenn das Objekt leer ist, andernfalls false
.
hstring::end-Funktion
Gibt einen Konst iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück. Siehe Iteratoren.
Syntax
wchar_t const* end() const noexcept;
Rückgabewert
Ein Konerator auf eins über das Ende (eines über das letzte Zeichen hinaus) des hstring- Objekts.
hstring::front-Funktion
Gibt einen Verweis auf das erste Zeichen im hstring- -Objekt zurück.
Syntax
wchar_t const& front() const noexcept;
Rückgabewert
Ein Verweis auf das erste Zeichen im hstring--Objekt.
hstring::operator std::wstring_view
Konvertiert das hstring-objekt in ein std::wstring_view.
Syntax
operator std::wstring_view() const noexcept;
Rückgabewert
Das Objekt, das in ein std::wstring_viewkonvertiert wurde.
Beispiel
using namespace winrt;
...
Uri contosoUri{ L"https://www.contoso.com" };
Uri awUri{ L"https://www.adventure-works.com" };
// Uri::Domain() is of type hstring. But we can use hstring's conversion operator to std::wstring_view.
std::wstring domainWstring{ contosoUri.Domain() }; // L"contoso.com"
domainWstring = awUri.Domain(); // L"https://www.adventure-works.com"
hstring::operator[] (tiefgestellter Operator)
Gibt einen Verweis auf das Zeichen an der angegebenen Position innerhalb des hstring -Objekts zurück.
Syntax
wchar_t const& operator[](uint32_t pos) const noexcept;
Parameter
pos
Eine nullbasierte Zeichenposition oder einen Index.
Rückgabewert
Ein Verweis auf das Zeichen an der angegebenen Position innerhalb des hstring-Objekts.
hstring::operator= (Zuordnungsoperator)
Weist dem hstring- -Objekt einen Wert zu.
Syntax
winrt::hstring& operator=(winrt::hstring const& h);
winrt::hstring& operator=(std::wstring_view const& v);
Parameter
h
Ein hstring- Wert, der dem hstring--Objekt zugewiesen werden soll.
v
A std::wstring_view-Wert, der dem hstring--Objekt zugewiesen werden soll.
Rückgabewert
Ein Verweis auf das hstring--Objekt.
hstring::rbegin-Funktion
Gibt einen umgekehrten Iterator bis zum Ende von (eins über das letzte Zeichen in) des hstring -Objekts zurück.
Syntax
std::reverse_iterator<wchar_t const*> rbegin() const noexcept;
Rückgabewert
Ein konst reverse iterator to one beyond the end of (one beyond the last character in) the hstring object.
hstring::rend-Funktion
Gibt einen umgekehrten Iterator zum ersten Zeichen im hstring -Objekt zurück.
Syntax
std::reverse_iterator<wchar_t const*> rend() const noexcept;
Rückgabewert
Ein konst reverse iterator to the first character in the hstring object.
hstring::size-Funktion
Gibt die Anzahl der Zeichen im hstring- -Objekt zurück.
Syntax
uint32_t size() const noexcept;
Rückgabewert
Ein uint32_t, das die Anzahl der Zeichen im hstring--Objekt enthält.
attach_abi-Funktion
Fügt ein hstring- -Objekt an ein Handle an eine Windows-Runtime-Zeichenfolge an.
Syntax
void attach_abi(winrt::hstring& object, HSTRING value) noexcept;
Parameter
object
Ein hstring--Objekt, das ausgeführt werden soll.
value
Ein Handle zu einer Windows-Runtime-Zeichenfolge.
copy_from_abi-Funktion
Kopiert in ein hstring- -Objekt von einem Handle in eine Windows-Runtime-Zeichenfolge. Löscht die hstring-, kopiert den Parameter und beginnt mit der Verwaltung des Handles.
Syntax
void copy_from_abi(winrt::hstring& object, HSTRING value);
Parameter
object
Ein hstring--Objekt, das ausgeführt werden soll.
value
Ein Handle zu einer Windows-Runtime-Zeichenfolge.
copy_to_abi-Funktion
Kopiert ein Handle in eine Windows-Runtime-Zeichenfolge aus einem hstring--Objekt.
Syntax
void copy_to_abi(winrt::hstring const& object, HSTRING& value);
Parameter
object
Ein hstring--Objekt, das ausgeführt werden soll.
value
Einen Handleverweis, über den der hstringZiehpunkt kopiert werden soll.
detach_abi-Funktion
Trennt ein hstring- Objekt vom Handle, um es vielleicht an einen Aufrufer zurückzugeben.
Syntax
HSTRING detach_abi(winrt::hstring& object) noexcept;
HSTRING detach_abi(winrt::hstring&& object) noexcept;
Parameter
object
Ein hstring--Objekt, das ausgeführt werden soll.
Rückgabewert
Das Handle für die Windows-Runtime-Zeichenfolge.
operator!= (Ungleichheitsoperator)
Gibt einen Wert zurück, der angibt, ob die beiden Parameter ungleich zueinander sind.
Syntax
inline bool operator!=(winrt::hstring const& hLeft, winrt::hstring const& hRight) noexcept;
inline bool operator!=(winrt::hstring const& hLeft, std::wstring const& wRight) noexcept;
inline bool operator!=(winrt::hstring const& hLeft, wchar_t const* cRight) noexcept;
inline bool operator!=(std::wstring const& wLeft, winrt::hstring const& hRight) noexcept;
inline bool operator!=(wchar_t const* cLeft, winrt::hstring const& hRight) noexcept;
Parameter
hLeft
hRight
Ein hstring- Wert, der mit dem anderen Parameter verglichen werden soll.
wLeft
wRight
A std::wstring
Wert, der mit dem anderen Parameter verglichen werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, um mit dem anderen Parameter zu vergleichen.
Rückgabewert
true
, wenn die beiden Parameter ungleich zueinander sind, andernfalls false
.
operator+ (Verkettungsoperator)
Gibt ein neues hstring- -Objekt zurück, das sich aus der Verkettung der beiden Parameter ergibt.
Syntax
inline hstring operator+(winrt::hstring const& hLeft, winrt::hstring const& hRight);
inline hstring operator+(winrt::hstring const& hLeft, std::wstring const& wRight);
inline hstring operator+(winrt::hstring const& hLeft, std::wstring_view const& vRight);
inline hstring operator+(winrt::hstring const& hLeft, wchar_t const* cRight);
inline hstring operator+(winrt::hstring const& hLeft, wchar_t scRight);
inline hstring operator+(std::wstring const& wLeft, winrt::hstring const& hRight);
inline hstring operator+(std::wstring_view const& vLeft, winrt::hstring const& hRight);
inline hstring operator+(wchar_t const* cLeft, winrt::hstring const& hRight);
inline hstring operator+(wchar_t scLeft, winrt::hstring const& hRight);
Parameter
hLeft
hRight
Ein hstring Wert, der mit dem anderen Parameter verkettet werden soll.
wLeft
wRight
Ein std::wstring
Wert, der mit dem anderen Parameter verkettet werden soll.
vLeft
vRight
A std::wstring_view Wert, der mit dem anderen Parameter verkettet werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, das mit dem anderen Parameter verkettet werden soll.
scLeft
scRight
A wchar_t, um mit dem anderen Parameter zu verketten.
Rückgabewert
Ein neues hstring--Objekt, das sich aus der Verkettung der beiden Parameter ergibt.
Operator< (Kleiner-als-Operator)
Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner als der zweite Parameter ist.
Syntax
inline bool operator<(winrt::hstring const& hLeft, winrt::hstring const& hRight) noexcept;
inline bool operator<(winrt::hstring const& hLeft, std::wstring const& wRight) noexcept;
inline bool operator<(winrt::hstring const& hLeft, wchar_t const* cRight) noexcept;
inline bool operator<(std::wstring const& wLeft, winrt::hstring const& hRight) noexcept;
inline bool operator<(wchar_t const* cLeft, winrt::hstring const& hRight) noexcept;
Parameter
hLeft
hRight
Ein hstring- Wert, der mit dem anderen Parameter verglichen werden soll.
wLeft
wRight
A std::wstring
Wert, der mit dem anderen Parameter verglichen werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, um mit dem anderen Parameter zu vergleichen.
Rückgabewert
true
, wenn der erste Parameter kleiner als der zweite Parameter ist, andernfalls false
.
operator<= (kleiner-als-oder-gleich-operator)
Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner oder gleich dem zweiten Parameter ist.
Syntax
inline bool operator<=(winrt::hstring const& hLeft, winrt::hstring const& hRight) noexcept;
inline bool operator<=(winrt::hstring const& hLeft, std::wstring const& wRight) noexcept;
inline bool operator<=(winrt::hstring const& hLeft, wchar_t const* cRight) noexcept;
inline bool operator<=(std::wstring const& wLeft, winrt::hstring const& hRight) noexcept;
inline bool operator<=(wchar_t const* cLeft, winrt::hstring const& hRight) noexcept;
Parameter
hLeft
hRight
Ein hstring- Wert, der mit dem anderen Parameter verglichen werden soll.
wLeft
wRight
A std::wstring
Wert, der mit dem anderen Parameter verglichen werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, um mit dem anderen Parameter zu vergleichen.
Rückgabewert
true
, wenn der erste Parameter kleiner oder gleich dem zweiten Parameter ist, andernfalls false
.
operator== (Gleichheitsoperator)
Gibt einen Wert zurück, der angibt, ob die beiden Parameter gleicheinander sind.
Syntax
inline bool operator==(winrt::hstring const& hLeft, winrt::hstring const& hRight) noexcept;
inline bool operator==(winrt::hstring const& hLeft, std::wstring const& wRight) noexcept;
inline bool operator==(winrt::hstring const& hLeft, wchar_t const* cRight) noexcept;
inline bool operator==(std::wstring const& wLeft, winrt::hstring const& hRight) noexcept;
inline bool operator==(wchar_t const* cLeft, winrt::hstring const& hRight) noexcept;
Parameter
hLeft
hRight
Ein hstring- Wert, der mit dem anderen Parameter verglichen werden soll.
wLeft
wRight
A std::wstring
Wert, der mit dem anderen Parameter verglichen werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, um mit dem anderen Parameter zu vergleichen.
Rückgabewert
true
, wenn die beiden Parameter gleicheinander sind, andernfalls false
.
operator> (größer-als-Operator)
Gibt einen Wert zurück, der angibt, ob der erste Parameter größer als der zweite Parameter ist.
Syntax
inline bool operator>(winrt::hstring const& hLeft, winrt::hstring const& hRight) noexcept;
inline bool operator>(winrt::hstring const& hLeft, std::wstring const& wRight) noexcept;
inline bool operator>(winrt::hstring const& hLeft, wchar_t const* cRight) noexcept;
inline bool operator>(std::wstring const& wLeft, winrt::hstring const& hRight) noexcept;
inline bool operator>(wchar_t const* cLeft, winrt::hstring const& hRight) noexcept;
Parameter
hLeft
hRight
Ein hstring- Wert, der mit dem anderen Parameter verglichen werden soll.
wLeft
wRight
A std::wstring
Wert, der mit dem anderen Parameter verglichen werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, um mit dem anderen Parameter zu vergleichen.
Rückgabewert
true
, wenn der erste Parameter größer als der zweite Parameter ist, andernfalls false
.
Operator>= (operator größer als oder gleich)
Gibt einen Wert zurück, der angibt, ob der erste Parameter größer oder gleich dem zweiten Parameter ist.
Syntax
inline bool operator>=(winrt::hstring const& hLeft, winrt::hstring const& hRight) noexcept;
inline bool operator>=(winrt::hstring const& hLeft, std::wstring const& wRight) noexcept;
inline bool operator>=(winrt::hstring const& hLeft, wchar_t const* cRight) noexcept;
inline bool operator>=(std::wstring const& wLeft, winrt::hstring const& hRight) noexcept;
inline bool operator>=(wchar_t const* cLeft, winrt::hstring const& hRight) noexcept;
Parameter
hLeft
hRight
Ein hstring- Wert, der mit dem anderen Parameter verglichen werden soll.
wLeft
wRight
A std::wstring
Wert, der mit dem anderen Parameter verglichen werden soll.
cLeft
cRight
Ein Zeiger auf ein Array konstanter wchar_t, um mit dem anderen Parameter zu vergleichen.
Rückgabewert
true
, wenn der erste Parameter größer oder gleich dem zweiten Parameter ist, andernfalls false
.