winrt::hstring struct (C++/WinRT)

Kumpulan berurutan karakter Unicode UTF-16 yang mewakili string teks. Untuk contoh dan info selengkapnya tentang winrt::hstring, lihat Penanganan string di C++/WinRT.

Jenis winrt::hstring merangkumHSTRING di belakang antarmuka yang mirip dengan std::wstring. HSTRING adalah handel untuk string Windows Runtime. Untuk informasi tentang cara mengatur HSTRING ke winrt::hstring, dan cara mengulang HSTRING dari winrt::hstring, lihat Mengoperasikan dengan HSTRING ABI.

Sintaks

struct hstring

Persyaratan

SDK minimum yang didukung: Windows SDK versi 10.0.17134.0 (Windows 10, versi 1803)

Namespace: winrt

Header: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (disertakan secara default)

Alias jenis anggota

Nama alias Jenis
hstring::value_type Sinonim untuk wchar_t.
hstring::size_type Sinonim untuk uint32_t.
hstring::const_reference Sinonim untuk hstring::value_type const&.
hstring::const_pointer Sinonim untuk hstring::value_type const*.
hstring::const_iterator Sinonim untuk hstring::const_pointer.
hstring::const_reverse_iterator Sinonim untuk std::reverse_iterator<hstring::const_iterator>.

Konstruktor

Konstruktor Deskripsi
hstring::hstring constructor Menginisialisasi instans baru struct hstring dengan salinan data string input.

Fungsi anggota

Fungsi Deskripsi
hstring::back function Mengembalikan referensi ke karakter terakhir dalam objek hstring .
hstring::begin function Mengembalikan iterator const ke karakter pertama dalam objek hstring .
fungsi hstring::c_str Mengembalikan penunjuk ke string gaya C yang dihentikan null yang mendasar dari karakter dalam objek hstring ; tidak ada salinan yang dibuat.
fungsi hstring::cbegin Mengembalikan iterator const ke karakter pertama dalam objek hstring .
fungsi hstring::cend Mengembalikan iterator const ke salah satu di luar akhir (satu di luar karakter terakhir dalam) objek hstring .
hstring::clear function Membuat objek hstring kosong.
fungsi hstring::crbegin Mengembalikan iterator balik const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .
fungsi hstring::crend Mengembalikan iterator balik const ke karakter pertama dalam objek hstring .
fungsi hstring::d ata Mengembalikan versi string gaya C yang dihentikan null dari karakter dalam objek hstring .
hstring::empty function Mengembalikan nilai yang menunjukkan apakah objek hstring kosong.
hstring::end function Mengembalikan iterator const ke salah satu di luar akhir (satu di luar karakter terakhir dalam) objek hstring .
hstring::front function Mengembalikan referensi ke karakter pertama dalam objek hstring .
fungsi hstring::rbegin Mengembalikan iterator balik const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .
fungsi hstring::rend Mengembalikan iterator balik const ke karakter pertama dalam objek hstring .
hstring::size function Mengembalikan jumlah karakter dalam objek hstring .

Operator anggota

Operator Deskripsi
hstring::operator std::wstring_view Mengonversi objek hstring ke std::wstring_view.
hstring::operator[] (operator subskrip)) Mengembalikan referensi ke karakter pada posisi yang ditentukan dalam objek hstring .
hstring::operator= (operator penugasan) Menetapkan nilai ke objek hstring .

Fungsi gratis

Fungsi Deskripsi
attach_abi (Fungsi attach_abi) Melampirkan objek hstring ke handel ke string Windows Runtime.
fungsi copy_from_abi Menyalin ke objek hstring dari handel ke string Windows Runtime. Menghapus hstring, menyalin parameter, dan mulai mengelola handel.
copy_to_abi fungsi Menyalin ke handel ke string Windows Runtime dari objek hstring .
detach_abi (Fungsi detach_abi) Melepaskan objek hstring dari pegangannya , mungkin untuk mengembalikannya ke penelepon.
to_hstring fungsi Mengonversi nilai input menjadi winrt::hstring yang berisi representasi string nilai.

Operator gratis

Operator Deskripsi
operator!= (operator ketidaksamaan) Mengembalikan nilai yang menunjukkan apakah kedua parameter tidak sama satu sama lain.
operator+ (operator perangkaian) Mengembalikan objek hstring baru yang dihasilkan dari menggabungkan dua parameter bersama-sama.
operator< (operator kurang dari) Mengembalikan nilai yang menunjukkan apakah parameter pertama kurang dari parameter kedua.
operator<= (operator kurang dari atau sama dengan) Mengembalikan nilai yang menunjukkan apakah parameter pertama kurang dari atau sama dengan parameter kedua.
operator== (operator kesetaraan) Mengembalikan nilai yang menunjukkan apakah kedua parameter sama dengan satu sama lain.
operator> (operator lebih besar dari) Mengembalikan nilai yang menunjukkan apakah parameter pertama lebih besar dari parameter kedua.
operator>= (operator lebih besar dari atau sama dengan) Mengembalikan nilai yang menunjukkan apakah parameter pertama lebih besar dari atau sama dengan parameter kedua.

Iterator

Hstring adalah rentang, dan rentang tersebut didefinisikan oleh fungsi hstring::begin dan hstring::end member, yang masing-masing mengembalikan iterator const (seperti halnya hstring::cbegin dan hstring::cend). Karena itu, Anda dapat menghitung karakter dalam objek hstring dengan pernyataan berbasis for rentang, atau dengan fungsi templat std::for_each .

#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 constructor

Menginisialisasi instans baru struct hstring dengan salinan data string input.

Sintaks

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 Nilai hstring yang menginisialisasi objek hstring .

v Nilai std::wstring_view yang menginisialisasi objek hstring .

c Penunjuk ke array wchar_t konstanta yang menginisialisasi objek hstring .

s Angka yang menentukan ukuran tetap untuk objek hstring .

Contoh

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 function

Mengembalikan referensi ke karakter terakhir dalam objek hstring .

Sintaks

wchar_t const& back() const noexcept;

Mengembalikan nilai

Referensi ke karakter terakhir dalam objek hstring .

hstring::begin function

Mengembalikan iterator const ke karakter pertama dalam objek hstring . Lihat Iterator.

Sintaks

wchar_t const* begin() const noexcept;

Mengembalikan nilai

Iterator const ke karakter pertama dalam objek hstring .

fungsi hstring::c_str

Mengembalikan penunjuk ke string gaya C yang dihentikan null yang mendasar dari karakter dalam objek hstring ; tidak ada salinan yang dibuat.

Sintaks

wchar_t const* c_str() const noexcept;

Mengembalikan nilai

Penunjuk ke string gaya C yang dihentikan null yang mendasar dari karakter dalam objek hstring ; tidak ada salinan yang dibuat.

Contoh

#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;
}

fungsi hstring::cbegin

Mengembalikan iterator const ke karakter pertama dalam objek hstring . Lihat Iterator.

Sintaks

wchar_t const* cbegin() const noexcept;

Mengembalikan nilai

Iterator const ke karakter pertama dalam objek hstring .

fungsi hstring::cend

Mengembalikan iterator const ke salah satu di luar akhir (satu di luar karakter terakhir dalam) objek hstring . Lihat Iterator.

Sintaks

wchar_t const* cend() const noexcept;

Mengembalikan nilai

Iterator const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .

hstring::clear function

Membuat objek hstring kosong.

Sintaks

void clear() noexcept;

fungsi hstring::crbegin

Mengembalikan iterator balik const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .

Sintaks

std::reverse_iterator<wchar_t const*> crbegin() const noexcept;

Mengembalikan nilai

Iterator balik const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .

fungsi hstring::crend

Mengembalikan iterator balik const ke karakter pertama dalam objek hstring .

Sintaks

std::reverse_iterator<wchar_t const*> crend() const noexcept;

Mengembalikan nilai

Iterator balik const ke karakter pertama dalam objek hstring .

fungsi hstring::d ata

Mengembalikan versi string gaya C yang dihentikan null dari karakter dalam objek hstring .

Sintaks

wchar_t const* data() const noexcept;

Mengembalikan nilai

Versi string gaya C yang dihentikan null dari karakter dalam objek hstring .

Contoh

#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 function

Mengembalikan nilai yang menunjukkan apakah objek hstring kosong.

Sintaks

bool empty() const noexcept;

Mengembalikan nilai

true jika objek hstring kosong, jika tidak false.

hstring::end function

Mengembalikan iterator const ke salah satu di luar akhir (satu di luar karakter terakhir dalam) objek hstring . Lihat Iterator.

Sintaks

wchar_t const* end() const noexcept;

Mengembalikan nilai

Iterator const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .

hstring::front function

Mengembalikan referensi ke karakter pertama dalam objek hstring .

Sintaks

wchar_t const& front() const noexcept;

Mengembalikan nilai

Referensi ke karakter pertama dalam objek hstring .

hstring::operator std::wstring_view

Mengonversi objek hstring ke std::wstring_view.

Sintaks

operator std::wstring_view() const noexcept;

Mengembalikan nilai

Objek hstring dikonversi ke std::wstring_view.

Contoh

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[] (operator subskrip)

Mengembalikan referensi ke karakter pada posisi yang ditentukan dalam objek hstring .

Sintaks

wchar_t const& operator[](uint32_t pos) const noexcept;

Parameter

pos Posisi karakter berbasis nol, atau indeks.

Menampilkan nilai

Referensi ke karakter pada posisi yang ditentukan dalam objek hstring .

hstring::operator= (operator penugasan)

Menetapkan nilai ke objek hstring .

Sintaks

winrt::hstring& operator=(winrt::hstring const& h);
winrt::hstring& operator=(std::wstring_view const& v);

Parameter

h Nilai hstring untuk ditetapkan ke objek hstring .

v Nilai std::wstring_view untuk ditetapkan ke objek hstring .

Mengembalikan nilai

Referensi ke objek hstring .

fungsi hstring::rbegin

Mengembalikan iterator balik const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .

Sintaks

std::reverse_iterator<wchar_t const*> rbegin() const noexcept;

Mengembalikan nilai

Iterator balik const ke salah satu di luar akhir (satu di luar karakter terakhir di) objek hstring .

fungsi hstring::rend

Mengembalikan iterator balik const ke karakter pertama dalam objek hstring .

Sintaks

std::reverse_iterator<wchar_t const*> rend() const noexcept;

Mengembalikan nilai

Iterator balik const ke karakter pertama dalam objek hstring .

hstring::size function

Mengembalikan jumlah karakter dalam objek hstring .

Sintaks

uint32_t size() const noexcept;

Mengembalikan nilai

uint32_t yang berisi jumlah karakter dalam objek hstring.

attach_abi (Fungsi attach_abi)

Melampirkan objek hstring ke handel ke string Windows Runtime.

Sintaks

void attach_abi(winrt::hstring& object, HSTRING value) noexcept;

Parameter

object Objek hstring untuk dioperasikan.

value Handel ke string Windows Runtime.

fungsi copy_from_abi

Menyalin ke objek hstring dari handel ke string Windows Runtime. Menghapus hstring, menyalin parameter, dan mulai mengelola handel.

Sintaks

void copy_from_abi(winrt::hstring& object, HSTRING value);

Parameter

object Objek hstring untuk dioperasikan.

value Handel ke string Windows Runtime.

copy_to_abi fungsi

Menyalin ke handel ke string Windows Runtime dari objek hstring .

Sintaks

void copy_to_abi(winrt::hstring const& object, HSTRING& value);

Parameter

object Objek hstring untuk dioperasikan.

value Referensi handel, untuk menyalin handel hstring.

detach_abi (Fungsi detach_abi)

Melepaskan objek hstring dari pegangannya , mungkin untuk mengembalikannya ke penelepon.

Sintaks

HSTRING detach_abi(winrt::hstring& object) noexcept;
HSTRING detach_abi(winrt::hstring&& object) noexcept;

Parameter

object Objek hstring untuk dioperasikan.

Menampilkan nilai

Handel ke string Windows Runtime.

operator!= (operator ketidaksamaan)

Mengembalikan nilai yang menunjukkan apakah kedua parameter tidak sama satu sama lain.

Sintaks

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

hLefthRight Nilai hstring untuk dibandingkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk dibandingkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk dibandingkan dengan parameter lainnya.

Menampilkan nilai

true jika kedua parameter tidak sama satu sama lain, jika tidak false.

operator+ (operator perangkaian)

Mengembalikan objek hstring baru yang dihasilkan dari menggabungkan dua parameter bersama-sama.

Sintaks

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

hLefthRight Nilai hstring untuk digabungkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk digabungkan dengan parameter lainnya.

vLeftvRight Nilai std::wstring_view untuk digabungkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk digabungkan dengan parameter lainnya.

scLeftscRightwchar_t untuk digabungkan dengan parameter lainnya.

Menampilkan nilai

Objek hstring baru yang dihasilkan dari menggabungkan dua parameter bersama-sama.

operator< (operator kurang dari)

Mengembalikan nilai yang menunjukkan apakah parameter pertama kurang dari parameter kedua.

Sintaks

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

hLefthRight Nilai hstring untuk dibandingkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk dibandingkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk dibandingkan dengan parameter lainnya.

Menampilkan nilai

true jika parameter pertama kurang dari parameter kedua, jika tidak false.

operator<= (operator kurang dari atau sama dengan)

Mengembalikan nilai yang menunjukkan apakah parameter pertama kurang dari atau sama dengan parameter kedua.

Sintaks

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

hLefthRight Nilai hstring untuk dibandingkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk dibandingkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk dibandingkan dengan parameter lainnya.

Menampilkan nilai

true jika parameter pertama kurang dari atau sama dengan parameter kedua, jika tidak false.

operator== (operator kesetaraan)

Mengembalikan nilai yang menunjukkan apakah kedua parameter sama dengan satu sama lain.

Sintaks

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

hLefthRight Nilai hstring untuk dibandingkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk dibandingkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk dibandingkan dengan parameter lainnya.

Mengembalikan nilai

true jika kedua parameter sama satu sama lain, jika tidak false.

operator> (operator lebih besar dari)

Mengembalikan nilai yang menunjukkan apakah parameter pertama lebih besar dari parameter kedua.

Sintaks

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

hLefthRight Nilai hstring untuk dibandingkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk dibandingkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk dibandingkan dengan parameter lainnya.

Menampilkan nilai

true jika parameter pertama lebih besar dari parameter kedua, jika tidak false.

operator>= (operator lebih besar dari atau sama dengan)

Mengembalikan nilai yang menunjukkan apakah parameter pertama lebih besar dari atau sama dengan parameter kedua.

Sintaks

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

hLefthRight Nilai hstring untuk dibandingkan dengan parameter lainnya.

wLeftwRight Nilai std::wstring untuk dibandingkan dengan parameter lainnya.

cLeftcRight Penunjuk ke array wchar_t konstanta untuk dibandingkan dengan parameter lainnya.

Mengembalikan nilai

true jika parameter pertama lebih besar dari atau sama dengan parameter kedua, jika tidak false.

Lihat juga