STL 実装 (SGI、STLport、libc++) のいくつかのソースを調べていたところ、すべてまたはほとんどの実装に共通すると思われる設計パターンがいくつか見られましたが、その理由は見つかりませんでした。私は良い反響があるに違いないと思います、そしてそれが何であるかを知りたいです:
vectorなどを含め、多くのクラスlist_iteratorが 2 つのクラスとして実装されました。たとえばlist_iterator_base、機能の一部が実装され、インターフェイスの残りの部分がlist_iterator継承されます。list_iterator_baseポイントは?1つのクラスで簡単に実行できるようです。iteratorイテレータはクラスを利用していないようです。それを使用するとパフォーマンスが低下しますか?
これらは、簡単なスキムで見つけた2つの質問です。STL 実装の実装原理を説明する優れたリソースを誰かが知っている場合は、喜んでお知らせします。