Контейнер для представления нескольких фрагментов памяти как одного непрерывного

Существует ли какой-нибудь "стандартный" контейнер (STL, boost), который может представлять несколько фрагментов памяти как один непрерывный? Мне нужно работать с некоторыми данными со следующими условиями:

  • Общий размер данных заранее неизвестен (веб-ответ)
  • Память выделяется порциями (с некоторой внешней функцией распределения, которую я не могу контролировать)
  • Я не контролирую освобождение памяти, поэтому перераспределение относительно дорого

Итак, после получения всех данных у меня есть список фрагментов памяти. И мне нужно применить некоторые алгоритмы STL (поиск, копирование и т. д.) к данным в целом. Существует решение написать контейнер для хранения информации об этих фрагментах + итератор пересылки, который может «прыгать» с одного фрагмента на другой.

Но проблема кажется довольно общей, поэтому я надеюсь, что есть какой-то общеизвестный ответ, который я упустил. Заранее спасибо.

6
задан iw.kuchin 19 March 2012 в 08:10
поделиться