Platform::Collections::MapView 类
将一个只读视图表示为一个 映射,这是键值对的集合。
语法
template <
typename K,
typename V,
typename C = ::std::less<K>>
ref class MapView sealed;
参数
K
键值对中键的类型。
V
键值对中值的类型。
C
提供一个函数对象的类型,该对象可以将两个元素值作为排序键加以比较,以决定它们在 MapView 中的相对顺序。 在默认情况下为 std::less<K>。
注解
MapView 是跨应用程序二进制接口 (ABI) 传递的 Windows::Foundation::Collections::IMapView <K,V> 接口的具体 C++ 实现。 有关更多信息,请参见 集合 (C++/CX)。
成员
公共构造函数
名称 | 描述 |
---|---|
MapView::MapView | 初始化 MapView 类的新实例。 |
公共方法
名称 | 描述 |
---|---|
MapView::First | 返回初始化为映射视图中第一个元素的迭代器。 |
MapView::HasKey | 确定当前 MapView 中是否包含指定键。 |
MapView::Lookup | 检索当前 MapView 对象中指定键处的元素。 |
MapView::Size | 返回当前 MapView 对象中的元素数目。 |
MapView::Split | 将原始 MapView 对象拆分成两个 MapView 对象。 |
继承层次结构
MapView
要求
标头: collection.h
命名空间: Platform::Collections
MapView::First 方法
返回指定映射视图中第一个元素的迭代器。
语法
virtual Windows::Foundation::Collections::IIterator<
Windows::Foundation::Collections::IKeyValuePair<K, V>^>^ First();
返回值
指定映射视图中第一个元素的迭代器。
注解
保留 First() 返回的迭代器的一种简便方式是将返回值分配给用 auto
类型推导关键字声明的变量。 例如 auto x = myMapView->First();
。
MapView::HasKey 方法
确定当前 MapView 中是否包含指定键。
语法
bool HasKey(K key);
参数
键
用于定位 MapView 元素的键。 key 的类型名称为 K。
返回值
如果找到该键,则为 true
;否则为 false
。
MapView::Lookup 方法
检索与类型 K 的指定键关联的类型 V 的值。
语法
V Lookup(K key);
参数
键
用于定位 MapView 中的元素的键。 key
的类型名称为 K。
返回值
与 key
配对的值。 返回值的类型名称为 V。
MapView::MapView 构造函数
初始化 MapView 类的新实例。
语法
explicit MapView(const C& comp = C());
explicit MapView(const ::std::map<K, V, C>& m);
explicit MapView(std::map<K, V, C>&& m);
template <typename InIt> MapView(
InIt first,
InIt last,
const C& comp = C());
MapView(
::std::initializer_list<std::pair<const K, V>> il,
const C& comp = C());
参数
InIt
当前 MapView 的类型名称。
comp
可以将两个元素值作为排序键加以比较,以决定它们在 MapView 中的相对顺序的函数对象。
m
对用于初始化当前 MapView 的 map Class
的引用或 Lvalue 和 Rvalue。
first
用于初始化当前 MapView 的一系列元素中的第一个元素的输入迭代器。
last
用于初始化当前 MapView 的一系列元素之后的第一个元素的输入迭代器。
il
其元素将插入 MapView 的 std::initializer_list<std::pair<K,V>>。
MapView::Size 方法
返回当前 MapView 对象中的元素数目。
语法
virtual property unsigned int Size;
返回值
当前 MapView 中的元素数目。
MapView::Split 方法
将当前 MapView 对象分成两个 MapView 对象。 此方法为非操作性的。
语法
void Split(
Windows::Foundation::Collections::IMapView<
K, V>^ * firstPartition,
Windows::Foundation::Collections::IMapView<
K, V>^ * secondPartition);
参数
firstPartition
原始 MapView 对象的第一部分。
secondPartition
原始 MapView 对象的第二部分。
备注
此方法为非操作性的,它不执行任何操作。