IVectorView<T> 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示向量中的不可變檢視。
。網由於 .NET 語言投影,此介面會顯示為System.Collections.Generic.IReadOnlyList < T >的 .NET 程式碼。 在任何Windows 執行階段類型已實作 IVectorView < T > 的情況下,.NET 程式碼都可以改用IReadOnlyList < T >的 API。
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)
類型參數
- T
- 屬性
- 實作
Windows 需求
裝置系列 |
Windows 10 (已於 10.0.10240.0 引進)
|
API contract |
Windows.Foundation.FoundationContract (已於 v1.0 引進)
|
備註
對於讀寫集合,IVectorView < T > 介面仍然相關,因為 IVector.GetView 方法會傳回 IVectorView< T > 實例。
如果基礎集合變更,IVectorView < T > 介面的方法和屬性可能會擲回例外狀況。
C++/WinRT 如果基礎集合已變更,方法和屬性可能會擲回例外狀況
hresult_changed_state
。
C++/CX 如果基礎集合已變更,方法和屬性可能會擲回例外狀況
ChangedStateException
。
使用 .NET 進行程式設計時,此介面會隱藏,如果開發人員想要實作唯讀向量/清單類型,則應該使用 IReadOnlyList < T > 介面。 在任何Windows 執行階段類型已實作 IVectorView < T > 的情況下,.NET 程式碼都可以改用 IReadOnlyList < T > 的 API。 這包括所有現有的Windows 執行階段 API,以及使用原本在 Visual C++ 元件延伸模組中實作Windows 執行階段元件的 API, (C++/CX) 從 C# 或 Visual Basic 應用程式實作的案例。
C++/WinRT 延伸模組函式
注意
擴充功能函式存在於特定Windows 執行階段 API 的 C++/WinRT 投影類型上。 例如, winrt::Windows::Foundation::IAsyncAction 是 IAsyncAction的 C++/WinRT 投影類型。 擴充函式不是應用程式二進位介面的一部分, (實際Windows 執行階段類型的 ABI) 介面,因此它們不會列為Windows 執行階段 API 的成員。 但您可以從任何 C++/WinRT 專案內呼叫它們。 請參閱擴充 Windows 執行階段 API 的 C++/WinRT 函式。
auto begin() const;
將反覆運算器傳回集合的第一個專案,以用於 C++ 演算法,例如範圍型 for
迴圈。
auto end() const;
將反覆運算器傳回至集合的最後一個元素之後的反覆運算器,以用於 C++ 演算法,例如範圍型 for
迴圈。
介面繼承
IVectorView 繼承 IIterable。 實作 IVectorView 的類型也會實作 IIterable的介面成員。 同樣地,如果您使用 .NET,則支援IEnumerable < T >。
屬性
Size |
取得向量檢視中的專案數。 |
方法
GetAt(UInt32) |
傳回向量檢視中位於指定索引處的專案。 |
GetMany(UInt32, T[]) |
從指定的索引開始,從向量檢視擷取多個專案。
|
IndexOf(T, UInt32) |
擷取向量檢視中指定專案的索引。 |