Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私は現在、STL がこのように vector pop_back を実装する理由を考えています。最初に終了ポインターの前書きを移動してから、終了ポインターを使用して最後の要素のスペースを解放するのはなぜですか?
void pop_back() { --_M_finish; destroy(_M_finish); }
ほとんど_M_finishの場合、最後のアイテムの直後のアイテムを指すエンド ポインターです。ポインタが 1 ステップ戻ると、削除される現在の最後の項目を指します。そして、そのアイテムが削除され_M_finishた後も、最後のアイテムの直後のアイテムである同じアイテムを指し続けます。
_M_finish