struct MyStruct { // stuff } typedef std::map<std::string, MyStruct> MyMap; MyStruct *getPointer(MyMap map, const char *key) { MyMap::iterator it = map.find(key); if (it == map.end()) return NULL; return const_cast<MyStruct*>(&it->second); }
Programming Tips - How do I convert a std::map iterator to a pointer?
Date: 2015apr20
Language: C/C++
Q. How do I convert a std::map<> iterator to a pointer?
A. Use const_cast<MyStruct*>(&it->second) as we show here: