|  | 
|      | 
|  | 
| Chapter 8. Boost.Circular BufferBoost , The Boost C++ Libraries BoostBook Documentation Subset , Part I. The Boost C++ Libraries (BoostBook Subset)
  
   | |||||||||
| ![[Note]](/img/note.png) | Note | 
|---|---|
| Также доступна удобная для принтера PDF-версия этого руководства. | 
Круговой буфер.
Терминкруговой буфер(также называемыйкольцомилициклическим буфером) относится к области памяти, которая используется для хранения входящих данных. Когда буфер заполнен, новые данные записываются, начиная с начала буфера и перезаписывая старые.
<boost::circular_buffer>является контейнером, совместимым с STL.
Это своего рода последовательность, подобнаяstd::listилиstd::deque. Он поддерживает итераторы случайного доступа, вставку постоянного времени и стирание операций в начале или конце буфера и взаимодействие с алгоритмами std.
<circular_buffer>специально разработан для обеспеченияфиксированной емкостихранения. Когда его емкость исчерпана, вновь вставленные элементы заставляют элементы перезаписываться либо в начале, либо в конце буфера (в зависимости от того, какая операция вставки используется).
<circular_buffer>выделяет память только при создании, когда емкость регулируется явно или по мере необходимости для размещения операций изменения размера или назначения.

Существует также версия<circular_buffer_space_optimized>.

<circular_buffer_space_optimized>является адаптацией<circular_buffer>, котораяне выделяет память сразу при создании, вместо этого она выделяет память по мере необходимости.
Распределение прогностической памяти аналогично типичной реализации<std::vector>. Память автоматически освобождается по мере уменьшения размера контейнера.
Процесс распределения памяти пространственно-оптимизированного кругового буфера.<min_capacity>контроллера емкости представляет собой минимальное гарантированное количество выделенной памяти. Выделенная память никогда не упадет ниже этого значения. По умолчанию значение<min_capacity>устанавливается в 0.<min_capacity>может быть установлено с использованием параметра конструктора<()
      capacity_control>или функции<set_capacity>.
Оптимизированная версия, конечно, немного медленнее.
| Последний пересмотр: 21 сентября 2016 года в 14:37:13 GMT | 
Статья Chapter 8. Boost.Circular Buffer раздела The Boost C++ Libraries BoostBook Documentation Subset Part I. The Boost C++ Libraries (BoostBook Subset) может быть полезна для разработчиков на c++ и boost.
:: Главная :: Part I. The Boost C++ Libraries (BoostBook Subset) ::
| реклама |