Cześć, zauważyłem, że ten fragment kodu sprawia problemy. Pytanie, czy faktycznie może być niebezpieczny, a jeśli tak, to jak go zmienić.
Załóżmy, że MyMap to mapa zadeklarowana tak:
typedef std::map<int, Item *> MyMap;
Item to po prostu jakaś klasa.
I mam taki kod:
for(MyMap::iterator it = m_map->begin(); it != m_map->end(); ++it)
{
Item * parent = (*m_map)[it->second->ParentHandle()];
//itd
Generalnie chodzi o odczyt iterowanej mapy za pomocą iteratora - tak jak powyżej. Czy to MOŻE być niebezpieczne?