迭代Map <String ^,Object ^> ^的C ++ / CX方法

我有一个Map<String^, Object^>^types的Map<String^, Object^>^ 。 我如何以C ++ / CX方式迭代? 我正在尝试使用迭代器,但我不清楚语法。 文档没有提供一个例子。

C ++ / CX集合遵循与c ++集合相同的原则,因此它们具有迭代器和开始,结束函数。

 IMap<Platform::String^, Platform::Object^>^ map = ref new Map<Platform::String^, Platform::Object^>(); map->Insert("key1", "val1"); map->Insert("key2", 2.0f); // Exactly like you would iterate over a map, but instead of std::pair you have IKeyValuePair std::for_each(begin(map), end(map), [](IKeyValuePair<Platform::String^, Platform::Object^>^ pair) { // do stuff auto key = pair->Key; auto value = pair->Value; }); for( auto pair : map ) { // do stuff auto key = pair->Key; auto value = pair->Value; } 

另外,不要忘记包含collection.h并使用命名空间Platform :: Collections。