Create a sequential allocator with growth limited to maxBufferSize.
Synopsis
Declared in <bdlma_sequentialallocator.h>
SequentialAllocator(
bsls::Types::size_type initialSize,
bsls::Types::size_type maxBufferSize,
bslma::Allocator* basicAllocator = 0);
Description
Create a sequential allocator for allocating memory blocks from a sequence of dynamically‐allocated buffers, of which the initial buffer has the specified initialSize (in bytes), and the buffer growth is limited to the specified maxBufferSize. Optionally specify a basicAllocator used to supply memory for the dynamically‐allocated buffers. If basicAllocator is 0, the currently installed default allocator is used. Optionally specify a growthStrategy used to control buffer growth. If no growthStrategy is specified, geometric growth is used. Optionally specify an alignmentStrategy used to control alignment of allocated memory blocks. If no alignmentStrategy is specified, natural alignment is used. The behavior is undefined unless 0 < initialSize and initialSize <= maxBufferSize. Note that when constant growth is used, the size of the internal buffers will always be the same as initialSize.
Parameters
Name |
Description |
initialSize |
initial size, in bytes, of the internal buffer |
maxBufferSize |
maximum dynamically allocated buffer size in bytes |
basicAllocator |
memory allocator; null uses the default |
Created with MrDocs