閑古鳥

オールドプログラマの日記。プログラミングとか病気(透析)の話とか。

reverse_iterator

STLのコンテナが持っている reverse_iterator 、便利なようで erase や insert ができなくて不便だなと思ったら、 base メンバ関数なんてものがあるんですね。これを使うと iterator が取れるので、 erase やらなんやらが呼べるようになるようです。始めて知りました(もしかしたら数年前の自分は知っていたかもしれない。でも忘れた)orz。

まぁreverse_iteratorなんて最近使い始めたものですから、知らないことがあっても仕方ないですよねっ。

std::vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.erase(v.rend().base());