Boost.Pool: различия между версиями
Содержимое удалено Содержимое добавлено
Drug007 (обсуждение | вклад) |
Drug007 (обсуждение | вклад) |
||
Строка 420:
Каждый Pool имеет связанный список выделенных блоков памяти, который может быть расширен при необходимости.Каждый блок памяти по умолчанию выделяется с помощью new[], и все блоки памяти освобождаются при вызове деструктора. Использование new[] позволяет нам гарантировать выравнивание.
==== Доказательство концепции: Гарантированное выравнивание(Proof of Concept: Guaranteeing Alignment) ====
Каждый блок памяти выделяется как POD тип (конкретно, как массив символов) с помощью оператора new[]. Возьмем POD_size как число выделенных символов.
Предикат 1: Массив может не иметь выравнивания (padding)
This follows from the following quote:
|