IMap<K,V> 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
맵 또는 사전이라고도 하는 결합 컬렉션을 나타냅니다.
.Net 이 인터페이스는 .NET 언어 프로젝션으로 인해 .NET 코드에 System.Collections.Generic.IDictionary<TKey,TValue> 로 표시됩니다. Windows 런타임 형식이 IMap K,V>를 구현한 경우 .NET 코드는 IDictionary<TKey,TValue>의 API를 대신 사용할 수 있습니다.<
public interface class IMap : IIterable<IKeyValuePair<K, V> ^>
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(1009329662, 34073, 17857, 170, 121, 25, 123, 103, 24, 193, 193)]
template <typename K, typename V>
struct IMap : IIterable<IKeyValuePair<K, V>>
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(1009329662, 34073, 17857, 170, 121, 25, 123, 103, 24, 193, 193)]
public interface IDictionary<K,V> : IEnumerable<KeyValuePair<K,V>>
Public Interface IDictionary(Of K, V)
Implements IEnumerable(Of KeyValuePair(Of K, V))
형식 매개 변수
- K
- V
- 특성
- 구현
-
IIterable<IKeyValuePair<K,V>> IEnumerable<KeyValuePair<K,V>>
Windows 요구 사항
디바이스 패밀리 |
Windows 10 (10.0.10240.0에서 도입되었습니다.)
|
API contract |
Windows.Foundation.FoundationContract (v1.0에서 도입되었습니다.)
|
설명
.NET으로 프로그래밍할 때 이 인터페이스는 숨겨지고 개발자는 맵/사전 형식을 구현하려는 경우 System.Collections.Generic.IDictionary<TKey,TValue> 인터페이스를 사용해야 합니다. Windows 런타임 형식이 IMap K,V>를 구현한 경우 .NET 코드는 IDictionary<TKey,TValue>의 API를 대신 사용할 수 있습니다.< 여기에는 모든 기존 Windows 런타임 API와 C# 또는 Visual Basic 앱의 Visual C++ 구성 요소 확장(C++/CX)에서 원래 구현된 Windows 런타임 구성 요소의 API 사용과 같은 시나리오도 포함됩니다.
IMap<K,V> 인터페이스는 연결된 키로 값에 액세스할 수 있는 키-값 쌍의 컬렉션을 나타냅니다. IMap<K,V> 의 속성 및 메서드는 컬렉션 크기를 가져오고 컬렉션의 지정된 위치에서 항목을 추가 및 제거하는 등의 사전 형식 기능을 지원합니다. 또한 GetView 메서드는 관찰 가능한 상태가 변경되지 않는 맵의 스냅샷 제공합니다. 이 스냅샷 IMap<K,V>를 포함하는 후속 작업에서 참조할 컬렉션 보기가 필요한 경우에 유용합니다.
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++ 알고리즘에서 사용하기 위해 컬렉션의 마지막 키-값 쌍을 지나서 반복기를 반환합니다.
auto TryLookup(param_type<K> const& key) const;
키 키를 사용하여 맵의 요소를 조회하려고 시도합니다. 참조 형식의 경우 은 찾은 nullptr
경우 또는 찾을 수 없는 경우 값을 반환합니다. 값 형식의 경우 는 std::optional<V를 반환합니다. 이 V>는 찾은 경우 값을 보유하거나 찾을 수 없는 경우 값이 없습니다.
bool TryRemove(param_type<K> const& key) const;
있는 경우 키 키를 사용하여 맵의 요소를 제거합니다. 요소를 찾아서 제거한 경우 를 반환 true
합니다. 요소를 찾을 수 없는 경우 를 반환 false
합니다.
인터페이스 상속
IMap<K,V>는 동일한 키 및 값 형식을 사용하는 IKeyValuePair 제약 조건을 사용하여 IIterable을 상속합니다. IMap<K,V>를 구현하는 형식은 IKeyValuePair 형식 제약 조건이 동일한 키와 값을 공유하는 IIterable의 인터페이스 멤버도 구현합니다. 마찬가지로 .NET을 사용하는 경우 IDictionary<TKey,TValue>>구현과 동일한 키 및 값 형식을 사용하는 KeyValuePair로 제약 조건 형식을 사용하는 IEnumerabe< T에 대한 지원이 있습니다.
속성
Size |
맵의 항목 수를 가져옵니다. |
메서드
Clear() |
맵에서 모든 항목을 제거합니다. |
GetView() |
맵의 변경할 수 없는 보기를 반환합니다. |
HasKey(K) |
맵에 지정된 키가 포함되어 있는지 여부를 확인합니다. |
Insert(K, V) |
맵에서 항목을 삽입하거나 바꿉니다. |
Lookup(K) |
맵의 지정된 키에 있는 항목을 반환합니다. |
Remove(K) |
맵에서 항목을 제거합니다. |