• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:STL mapからの要素の削除)

STL mapから特定の値を持つ要素を削除できない問題について

このQ&Aのポイント
  • STLのmapから特定の値を持つ要素を削除したいが、上手くいかない。
  • eraseを呼んだ次のループでもう一度eraseを呼ぶと実行時エラーとなる。
  • 削除後のイテレータが指す値が悪いのではないかと思うが、具体的な原因を知りたい。

質問者が選んだベストアンサー

  • ベストアンサー
  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

m.erase(i) すると iterator i の指す先が無くなるので、i++ できません。 そのものずばりのページがあったので、以下はそこを参照 要約すると、いっこ進んでから直前の要素を消す。

参考URL:
http://www.sun-inet.or.jp/~yaneurao/intensive/cppmaniax/chap0004.html
addle
質問者

お礼

ありがとうございます。 なるほど、これですっきりしました。

関連するQ&A