76 if (_heap_block_last_free == _heap_block_size) {
77 _heap_block_size *= 2;
78 _heap.push_front(std::vector<char>(_heap_block_size*_sizeof_bucket));
79 _heap_block_last_free = 0;
81 std::vector<char>& block = *(_heap.begin());
82 char*
p = &block [_heap_block_last_free*_sizeof_bucket];
83 _heap_block_last_free++;
99 for (std::list<std::vector<char> >::reverse_iterator i = _heap.rbegin();
100 _counter != 0 && i != _heap.rend(); i++, n *= 2) {
101 std::vector<char>& block = *i;
102 char*
p = &(block[0]);
103 for (
size_type c = 0; _counter != 0 && c < n; c++,
p += _sizeof_bucket) {
108 _heap.erase(_heap.begin(), _heap.end());