Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kelas dasar tempat Anda dapat memperoleh untuk mengimplementasikan koleksi asosiatif kustom Anda sendiri yang tidak dapat diamati. Untuk informasi selengkapnya, dan contoh kode, lihat Koleksi dengan C++/WinRT.
Sintaks
template <typename D, typename K, typename V>
struct map_base : map_view_base<D, K, V, winrt::impl::collection_version>
Parameter templat
typename D Nama jenis turunan Anda.
typename K Jenis kunci dalam koleksi.
typename V Jenis nilai dalam koleksi.
Persyaratan
SDK minimum yang didukung: Windows SDK versi 10.0.17763.0 (Windows 10, versi 1809)
Namespace: winrt
Header: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (disertakan secara default)
Fungsi anggota
| Fungsi | Deskripsi |
|---|---|
| map_base::Clear function | Menghapus semua elemen dari objek map_base . |
| map_base::Fungsi pertama | Mengambil IIterator yang mewakili elemen pertama dalam objek map_base . |
| map_base::Fungsi GetView | Mengambil tampilan objek map_base yang tidak dapat diubah. |
| fungsi map_base::HasKey | Menentukan apakah kunci yang ditentukan milik elemen dalam objek map_base . |
| map_base::Sisipkan fungsi | Menyisipkan atau memperbarui elemen dalam objek map_base . |
| map_base::Fungsi pencarian | Mencari elemen yang diidentifikasi oleh kunci yang ditentukan, dan mengambil nilai yang sesuai. |
| map_base::Hapus fungsi | Menghapus elemen dari objek map_base . |
| map_base::Fungsi ukuran | Mengambil jumlah elemen dalam objek map_base . |
Iterator
map_base adalah rentang, dan rentang tersebut didefinisikan oleh fungsi bebas internal (yang masing-masing mengambil iterator) yang kompatibel dengan fitur bahasa standar. Karena itu, Anda dapat menghitung elemen dalam objek map_base dengan pernyataan berbasis for rentang.
Anda juga dapat mengambil IIterator dari fungsi map_base::First , dan menggunakannya untuk melakukan iterasi melalui elemen dalam objek map_base .
...
#include <iostream>
using namespace winrt;
using namespace Windows::Foundation::Collections;
...
struct MyMap :
implements<MyMap, IMap<winrt::hstring, int>, IMapView<winrt::hstring, int>, IIterable<IKeyValuePair<winrt::hstring, int>>>,
winrt::map_base<MyMap, winrt::hstring, int>
{
auto& get_container() const noexcept
{
return m_values;
}
auto& get_container() noexcept
{
return m_values;
}
private:
std::map<winrt::hstring, int> m_values{
{ L"AliceBlue", 0xfff0f8ff }, { L"AntiqueWhite", 0xfffaebd7 }
};
};
...
IMap<winrt::hstring, int> map{ winrt::make<MyMap>() };
for (auto const& el : map)
{
std::wcout << el.Key().c_str() << L", " << std::hex << el.Value() << std::endl;
}
IIterator<IKeyValuePair<winrt::hstring, int>> it{ map.First() };
while (it.HasCurrent())
{
std::wcout << it.Current().Key().c_str() << L", " << std::hex << it.Current().Value() << std::endl;
it.MoveNext();
}
map_base::Clear function
Menghapus semua elemen dari objek map_base .
Sintaks
void Clear() noexcept;
map_base::Fungsi pertama
Mengambil IIterator yang mewakili elemen pertama dalam objek map_base .
Sintaks
auto First();
Mengembalikan nilai
IIterator yang mewakili elemen pertama dalam objek map_base.
map_base::Fungsi GetView
Mengambil tampilan objek map_base yang tidak dapat diubah.
Sintaks
winrt::Windows::Foundation::Collections::IMapView<K, V> GetView() const;
Mengembalikan nilai
IMapView yang berisi tampilan map_base yang tidak dapat diubah.
fungsi map_base::HasKey
Menentukan apakah kunci yang ditentukan milik elemen dalam objek map_base .
Sintaks
bool HasKey(K const& key) const noexcept;
Parameter
key Kunci yang harus dicari.
Mengembalikan nilai
true jika elemen yang berisi kunci ditemukan, jika tidak false.
map_base::Sisipkan fungsi
Menyisipkan atau memperbarui elemen dalam objek map_base .
Sintaks
bool Insert(K const& key, V const& value);
Parameter
key Kunci yang terkait dengan elemen untuk disisipkan atau diperbarui.
value Nilai yang akan disisipkan atau diganti.
Mengembalikan nilai
true jika elemen dengan kunci yang ditentukan ditemukan dan diperbarui; jika tidak false.
map_base::Fungsi pencarian
Mencari elemen yang diidentifikasi oleh kunci yang ditentukan, dan mengambil nilai yang sesuai.
Sintaks
V Lookup(K const& key) const;
Parameter
key Kunci untuk mencari.
Mengembalikan nilai
Nilai yang sesuai dengan kunci yang sedang dicari jika ditemukan, jika tidak, pengecualian winrt::hresult_out_of_bounds dilemparkan.
map_base::Hapus fungsi
Menghapus elemen dari objek map_base .
Sintaks
void Remove(K const& key);
Parameter
key Kunci yang terkait dengan elemen yang akan dihapus.
map_base::Fungsi ukuran
Mengambil jumlah elemen dalam objek map_base .
Sintaks
uint32_t Size() const noexcept;
Mengembalikan nilai
Nilai yang menunjukkan jumlah elemen dalam objek map_base .