Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Представляет сопоставление, являющееся коллекцией пар "ключ-значение". Реализует Windows::Foundation::Collections::IObservableMap, чтобы помочь с привязкой данных XAML.
Синтаксис
template <
typename K,
typename V,
typename C = std::less<K>>
ref class Map sealed;
Параметры
K
Тип ключа в паре "ключ-значение".
V
Тип значения в паре "ключ-значение".
C
Тип, предоставляющий объект функции, который может сравнить два значения элементов как ключи сортировки для определения их относительного порядка в объекте Map. По умолчанию std::less<K>.
__is_valid_winrt_type() Функция, созданная компилятором, которая проверяет тип K и V и предоставляет понятное сообщение об ошибке, если тип не может храниться в карте.
Замечания
Допустимые типы:
integers
класс интерфейса^
открытый ссылочный класс ^
value struct
открытый класс перечисления
Карта — это, по сути, программа-оболочка для std::map. Это конкретная реализация типов Windows::Foundation::Collections::IMap<Windows::Foundation::Collections::IKeyValuePair<K,V>> и IObservableMap, передаваемых через общедоступные интерфейсы среда выполнения Windows. При попытке использования типа Platform::Collections::Map в открытом возвращаемом значении или параметре возникает ошибка компилятора C3986. Эту ошибку можно исправить, изменив тип параметра или возвращая значение в Windows::Foundation::Collections::IMap<K,V>.
Дополнительные сведения см. в разделе "Коллекции".
Участники
Открытые конструкторы
| Имя | Описание |
|---|---|
| Map::Map | Инициализирует новый экземпляр класса Map. |
Открытые методы
| Имя | Описание |
|---|---|
| Карта::Clear | Удаляет все пары "ключ-значение" из текущего объекта Map. |
| Map::First | Возвращает итератор, указывающий первый элемент в сопоставлении. |
| Map::GetView | Возвращает представление текущего объекта Map, доступное только для чтения (т. е. Platform::Collections::MapView Class). |
| Map::HasKey | Определяет, содержит ли текущий объект Map указанный ключ. |
| Map::Insert | Добавляет в текущий объект Map указанную пару "ключ-значение". |
| Map::Lookup | Извлекает элемент по указанному ключу в текущем объекте Map. |
| Map::Remove | Удаляет указанную пару "ключ-значение" из текущего объекта Map. |
| Map::Size | Возвращает количество элементов в текущем объекте Map. |
События
| Имя | Описание |
|---|---|
| Событие Map::MapChanged | Происходит при изменении объекта Map. |
Иерархия наследования
Map
Требования
Заголовок: collection.h
Пространство имен: Platform::Collections
Метод Map::Clear
Удаляет все пары "ключ-значение" из текущего объекта Map.
Синтаксис
virtual void Clear();
Метод Map::First
Возвращает итератор, указывающий первый элемент в сопоставлении или nullptr, если сопоставление пусто.
Синтаксис
virtual Windows::Foundation::Collections::IIterator<
Windows::Foundation::Collections::IKeyValuePair<K, V>^>^ First();
Возвращаемое значение
Итератор, указывающий первый элемент на карте.
Замечания
Удобный способ хранения итератора, возвращаемого First(), — назначить возвращаемое значение переменной, объявленной с ключевым словом вычета auto типов. Например, auto x = myMap->First();.
Метод Map::GetView
Возвращает представление только для чтения текущей карты; То есть класс Platform::Collections::MapView, реализующий интерфейс Windows::Foundation::Collections::IMapView<K,V>.
Синтаксис
Windows::Foundation::Collections::IMapView<K, V>^ GetView();
Возвращаемое значение
Объект MapView.
Метод Map::HasKey
Определяет, содержит ли текущий объект Map указанный ключ.
Синтаксис
bool HasKey(K key);
Параметры
key
Ключ, используемый для поиска элемента Map. Тип ключа — typename K.
Возвращаемое значение
true Значение falseв противном случае .
Метод Map::Insert
Добавляет в текущий объект Map указанную пару "ключ-значение".
Синтаксис
virtual bool Insert(K key, V value);
Параметры
key
Ключ из пары "ключ-значение". Тип ключа — typename K.
значение
Значение из пары "ключ-значение". Тип значения — typename V.
Возвращаемое значение
true Значение имеет значение, если ключ существующего элемента в текущем элементе Map соответствует ключу , а для части значения этого элемента задано значение. falseЕсли существующий элемент в текущем ключе Сопоставления не соответствует ключу, а параметры ключа и значения вносятся в пару "ключ-значение", а затем добавляются в текущую карту.
Метод Map::Lookup
Возвращает значение типа V, связанное с указанным ключом типа K, если ключ существует.
Синтаксис
V Lookup(K key);
Параметры
key
Ключ, используемый для поиска элемента на карте. Тип ключа — typename K.
Возвращаемое значение
Значение, которое связано с ключом. Тип возвращаемого значения — typename V.
Замечания
Если ключ не существует, создается исключение Platform::OutOfBoundsException .
Конструктор Map::Map
Инициализирует новый экземпляр класса Map.
Синтаксис
explicit Map(const C& comp = C());
explicit Map(const StdMap& m);
explicit Map(StdMap&& m);
template <typename InIt>
Map(
InItfirst,
InItlast,
const C& comp = C());
Параметры
InIt
Имя типа текущего объекта Map.
comp
Тип, предоставляющий объект функции, который может сравнить два значения элементов как ключи сортировки для определения их относительного порядка в объекте Map.
m
Ссылка или rvalue на объект map Class , используемый для инициализации текущей карты.
first
Итератор ввода первого элемента в диапазоне элементов, используемый для инициализации текущего объекта Map.
last
Итератор ввода первого элемента после диапазона элементов, используемый для инициализации текущего объекта Map.
Событие Map::MapChanged
Возникает, когда элемент вставляется в сопоставление или удаляется из него.
Синтаксис
event Windows::Foundation::Collections::MapChangedEventHandler<K,V>^ MapChanged;
Значение свойства/возвращаемое значение
MapChangedEventHandler<K,V>, содержащий сведения об объекте, вызвавшее событие, и тип изменения, которое произошло. См. также перечисление IMapChangedEventArgs<K> и CollectionChange.
Эквивалент .NET Framework
среда выполнения Windows приложения, использующие C# или Visual Basic project IMap<K,V> как IDictionary<K,V>.
Метод Map::Remove
Удаляет указанную пару "ключ-значение" из текущего объекта Map.
Синтаксис
virtual void Remove(K key);
Параметры
key
Ключ из пары "ключ-значение". Тип ключа — typename K.
Метод Map::Size
Возвращает количество элементов Windows::Foundation::Collections::IKeyValuePair<K,V> в карте.
Синтаксис
virtual property unsigned int Size;
Возвращаемое значение
Количество элементов в объекте Map.
См. также
Коллекции (C++/CX)
Пространство имен платформы
Создание компонентов среды выполнения Windows на C++