次のループでは、事前に計算された終了イテレータを使用しています。
std::list::iterator end = MyList.end();
for (std::list::iterator it = MyList.begin(); it != end ;)
it = MyList.erase(it);
std::list 内の要素を消去するとき、MyList.end() はその値を変更できend != MyList.end()
ますか?
次のループでは、事前に計算された終了イテレータを使用しています。
std::list::iterator end = MyList.end();
for (std::list::iterator it = MyList.begin(); it != end ;)
it = MyList.erase(it);
std::list 内の要素を消去するとき、MyList.end() はその値を変更できend != MyList.end()
ますか?