IVectorView<T> Antarmuka
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili tampilan yang tidak dapat diubah ke dalam vektor.
.BERSIH Antarmuka ini tampaknya kode .NET sebagai System.Collections.Generic.IReadOnlyList<T> karena proyeksi bahasa .NET. Dalam kasus apa pun di mana jenis Windows Runtime telah menerapkan IVectorView<T>, kode .NET dapat menggunakan API IReadOnlyList<T> sebagai gantinya.
public interface class IVectorView : IIterable<T>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(3152149068, 45283, 17795, 186, 239, 31, 27, 46, 72, 62, 86)]
template <typename T>
struct IVectorView : IIterable<T>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(3152149068, 45283, 17795, 186, 239, 31, 27, 46, 72, 62, 86)]
public interface IReadOnlyList<T> : IEnumerable<T>
Public Interface IReadOnlyList(Of T)
Implements IEnumerable(Of T)
Jenis parameter
- T
- Atribut
- Penerapan
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0)
|
API contract |
Windows.Foundation.FoundationContract (diperkenalkan dalam v1.0)
|
Keterangan
Untuk koleksi baca-tulis, antarmuka IVectorView<T> masih relevan, karena metode IVector.GetView mengembalikan instans IVectorView<T> .
Jika pengumpulan yang mendasar berubah, metode, dan properti antarmuka IVectorView<T> dapat melemparkan pengecualian.
C++/WinRT Jika koleksi yang mendasar telah berubah, metode dan properti dapat memberikan
hresult_changed_state
pengecualian.
C++/CX Jika koleksi yang mendasar telah berubah, metode dan properti dapat memberikan
ChangedStateException
pengecualian.
Saat pemrograman dengan .NET, antarmuka ini disembunyikan dan pengembang harus menggunakan antarmuka IReadOnlyList<T> jika mereka ingin menerapkan jenis vektor/daftar baca-saja. Dalam kasus apa pun di mana jenis Windows Runtime telah menerapkan IVectorView<T>, kode .NET dapat menggunakan API IReadOnlyList<T> sebagai gantinya. Ini termasuk semua WINDOWS Runtime API yang ada dan juga skenario seperti menggunakan API komponen Windows Runtime yang awalnya diterapkan dalam ekstensi komponen Visual C++ (C++/CX) dari aplikasi C# atau Visual Basic.
Fungsi ekstensi C++/WinRT
Catatan
Fungsi ekstensi ada pada jenis proyeksi C++/WinRT untuk API Windows Runtime tertentu. Misalnya, winrt::Windows::Foundation::IAsyncAction adalah jenis proyeksi C++/WinRT untuk IAsyncAction. Fungsi ekstensi bukan bagian dari permukaan antarmuka biner aplikasi (ABI) dari jenis Windows Runtime yang sebenarnya, sehingga tidak terdaftar sebagai anggota API Windows Runtime. Tetapi Anda dapat memanggilnya dari dalam proyek C++/WinRT apa pun. Lihat fungsi C++/WinRT yang memperluas WINDOWS Runtime API.
auto begin() const;
Mengembalikan iterator ke elemen pertama koleksi, untuk digunakan dalam algoritma C++ seperti perulangan berbasis for
rentang.
auto end() const;
Mengembalikan iterator ke satu melewati elemen terakhir koleksi, untuk digunakan dalam algoritma C++ seperti perulangan berbasis for
rentang.
Pewarisan antarmuka
IVectorView mewarisi IIterable. Jenis yang mengimplementasikan IVectorView juga mengimplementasikan anggota antarmuka IIterable. Demikian pula, jika Anda menggunakan .NET, ada dukungan untuk IEnumerable<T>.
Properti
Size |
Mendapatkan jumlah item dalam tampilan vektor. |
Metode
GetAt(UInt32) |
Mengembalikan item pada indeks yang ditentukan dalam tampilan vektor. |
GetMany(UInt32, T[]) |
Mengambil beberapa item dari tampilan vektor yang dimulai pada indeks yang diberikan.
|
IndexOf(T, UInt32) |
Mengambil indeks item tertentu dalam tampilan vektor. |