ciao.
sto tentando di cancellare l'ultimo elemento di una mappa stl:
std::map<std::string,CBone*> m_MapBones;
ho provato con:
m_MapBones.erase(m_MapBones.end());
ma non ci sono riuscito , la mappa non è nulla e l'errore è
map/set erase iterator outside range
, al che ho provato con:
m_MapBones.erase(m_MapBones.end()-1);
e il compilatore mi da questi errori:
Error 13 error C2676: binary '-' : 'std::_Tree<_Traits>::iterator' does not define this operator or a conversion to a type acceptable to the predefined operator c:\programmazione\old2\old\wild magic 4\geometrictools\wildmagic4\samplegraphics\materia ltextures\skeleton.cpp 125
e questo:
Error 1 error C2784: 'reverse_iterator<_RanIt>::difference_type std:perator -(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)' : could not deduce template argument for 'const std::reverse_iterator<_RanIt> &' from 'std::_Tree<_Traits>::iterator' c:\programmazione\old2\old\wild magic 4\geometrictools\wildmagic4\samplegraphics\materia ltextures\skeleton.cpp 125
come si fa?
grazie.