2015-02-05 4 views
1

Я пишу автобус событий, и мне нужно иметь std :: вектор динамических контейнеров. Сами контейнеры не знакомы с типом, но хранение и извлечение объектов из них зависит от типа и поэтому каждый контейнер имеет объекты одного типа. (Существует отображение типов индексов).Неттипированный непрерывный контейнер памяти

Мне было интересно, есть ли способ STL или boost, который поможет в решении этой проблемы. Я бы хотел, чтобы избежать прямого размещения размещения и обработки выравнивания напрямую.

ответ

1

std::raw_storage_iterator и, возможно, также std::get_temporary_buffer может помочь. Они ниже уровня, чем std::vector. См. Например, cpp reference.

+0

Это должно быть сделано! – Veritas

0

boost :: любой разрешает большинство из этих проблем, но вызывающий должен знать тип.

+0

Данные не будут храниться смежно, хотя. – Veritas

Смежные вопросы