IVectorView<T> インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
変更できないビューをベクターに表します。
。ネット このインターフェイスは、.NET 言語プロジェクションのため、.NET コードに System.Collections.Generic.IReadOnlyList<T> として表示されます。 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 で導入)
|
注釈
読み取り/書き込みコレクションの場合、IVector.GetView メソッドは IVectorView< T> インスタンスを返すので、IVectorView<T> インターフェイスは引き続き関連します。
基になるコレクションが変更された場合、IVectorView<T> インターフェイスのメソッドとプロパティが例外をスローする可能性があります。
C++/WinRT 基になるコレクションが変更された場合、メソッドとプロパティによって例外が
hresult_changed_state
スローされる可能性があります。
C++/CX 基になるコレクションが変更された場合、メソッドとプロパティによって例外が
ChangedStateException
スローされる可能性があります。
.NET を使用してプログラミングする場合、このインターフェイスは非表示になり、開発者は読み取り専用ベクター/リスト型を実装する場合は IReadOnlyList<T> インターフェイスを使用する必要があります。 Windows ランタイム型で IVectorView<T> が実装されている場合は、.NET コードで代わりに IReadOnlyList<T> の API を使用できます。 これには、既存のすべてのWindows ランタイム API と、C# または Visual Basic アプリから Visual C++ コンポーネント拡張機能 (C++/CX) で最初に実装されたWindows ランタイム コンポーネントの API の使用などのシナリオも含まれます。
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;
範囲ベース for
のループなどの C++ アルゴリズムで使用するために、コレクションの最初の要素を指す反復子を返します。
auto end() const;
範囲ベース for
のループなどの C++ アルゴリズムで使用するために、コレクションの最後の要素の 1 つ後の反復子を返します。
インターフェイスの継承
IVectorView は IIterable を継承します。 IVectorView を実装する型は、 IIterable のインターフェイス メンバーも実装します。 同様に、.NET を使用している場合は、 IEnumerable<T> のサポートがあります。
プロパティ
Size |
ベクター ビュー内の項目の数を取得します。 |
メソッド
GetAt(UInt32) |
ベクター ビューの指定したインデックス位置にある項目を返します。 |
GetMany(UInt32, T[]) |
指定したインデックスから始まるベクター ビューから複数の項目を取得します。
|
IndexOf(T, UInt32) |
ベクター ビュー内の指定した項目のインデックスを取得します。 |