IVector<T> 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示元素的随机访问集合。
。网 由于 .NET 语言投影,此接口在 .NET 代码中显示为 System.Collections.Generic.IList<T> 。 在Windows 运行时类型已实现 IVector<T> 的任何情况下,.NET 代码都可以改用 IList<T> 的 API。
public interface class IVector : IIterable<T>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2436052969, 4513, 17221, 163, 162, 78, 127, 149, 110, 34, 45)]
template <typename T>
struct IVector : IIterable<T>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(2436052969, 4513, 17221, 163, 162, 78, 127, 149, 110, 34, 45)]
public interface IList<T> : IEnumerable<T>
Public Interface IList(Of T)
Implements IEnumerable(Of T)
类型参数
- T
- 属性
- 实现
Windows 要求
设备系列 |
Windows 10 (在 10.0.10240.0 中引入)
|
API contract |
Windows.Foundation.FoundationContract (在 v1.0 中引入)
|
注解
使用 .NET 编程时,此接口是隐藏的,如果开发人员想要实现向量/列表类型,则应使用 System.Collections.Generic.IList<T> 接口。 在Windows 运行时类型已实现 IVector<T> 的任何情况下,.NET 代码都可以改用 IList<T> 的 API。 这包括所有现有的 Windows 运行时 API 和方案,例如使用最初在 Visual C++ 组件扩展中实现Windows 运行时组件的 API, (C# 或 Visual Basic 应用中的 C++/CX) 。
IVector<T> 接口表示可由索引单独访问的指定类型的对象的集合。 IVector<T> 的属性和方法支持列表类型功能,例如获取集合的大小,以及在集合中的指定位置添加和删除项。 此外,GetView 方法提供可观测状态不会更改的向量快照。 如果需要在涉及 IVector<T> 的后续操作中引用集合的视图,快照非常有用。
C++/WinRT 扩展函数
注意
某些Windows 运行时 API 的 C++/WinRT 投影类型上存在扩展函数。 例如, winrt::Windows::Foundation::IAsyncAction 是 IAsyncAction 的 C++/WinRT 投影类型。 扩展函数不是应用程序二进制接口 (ABI) 实际Windows 运行时类型的图面的一部分,因此它们不会列为Windows 运行时 API 的成员。 但可以从任何 C++/WinRT 项目中调用它们。 请参阅扩展Windows 运行时 API 的 C++/WinRT 函数。
auto begin() const;
返回集合的第一个元素的迭代器,以便在 C++ 算法(如基于 for
范围的循环)中使用。
auto end() const;
将迭代器返回到集合最后一个元素之后的迭代器,以便在 C++ 算法(如基于 for
范围的循环)中使用。
接口继承
IVector 继承 IIterable。 实现 IVector 的类型还实现 IIterable 的接口成员。 同样,如果使用 .NET,则支持 IEnumerable<T>。
属性
Size |
获取向量中的项数。 |
方法
Append(T) |
将项追加到向量的末尾。 |
Clear() |
从向量中删除所有项。 |
GetAt(UInt32) |
返回向量中指定索引处的项。 |
GetMany(UInt32, T[]) |
从给定索引处开始的向量中检索多个项。
|
GetView() |
返回向量的不可变视图。 |
IndexOf(T, UInt32) |
检索向量中指定项的索引。 |
InsertAt(UInt32, T) |
在向量中的指定索引处插入项。 |
RemoveAt(UInt32) |
移除向量中指定索引处的项。 |
RemoveAtEnd() |
从向量中删除最后一项。 |
ReplaceAll(T[]) |
将向量中的所有项替换为指定的项。 |
SetAt(UInt32, T) |
设置向量中指定索引处的值。 |