Я вообще в последнее время, переключил своё внимание с контейнеров на диапазоны. Они не выделяют память сами, их можно комбинировать с чем угодно и я надеюсь придумать, как строить контейнеры на них, вместо того, чтобы хардкодить всё в классе контейнера.