在vc6.0下,若(siSprite为迭代器)
m_vSprites.erase(siSprite);
则siSprite会自动指向下一个元素,而vs05及之后版本则不会自动指向,而是丢失处理。如果接着再来一句:
siSprite--或++,则报错:Expression:("this->_Has_container()",0)......
解决办法为:siSprite=m_vSprites.erase(siSprite);
这样就能指向下一个元素。其实也就是两个版本中erase函数的返回值变了