std::pmr::monotonic_buffer_resource::monotonic_buffer_resource
monotonic_buffer_resource(); | (1) | (с C++17) |
explicit monotonic_buffer_resource( std::pmr::memory_resource* upstream ); | (2) | (с C++17) |
explicit monotonic_buffer_resource( std::size_t initial_size ); | (3) | (с C++17) |
monotonic_buffer_resource( std::size_t initial_size,
std::pmr::memory_resource* upstream );
| (4) | (с C++17) |
monotonic_buffer_resource( void* buffer, std::size_t buffer_size ); | (5) | (с C++17) |
monotonic_buffer_resource( void* buffer, std::size_t buffer_size,
std::pmr::memory_resource* upstream );
| (6) | (с C++17) |
monotonic_buffer_resource( const monotonic_buffer_resource& ) = delete; | (7) | (с C++17) |
Создаёт monotonic_buffer_resource. Конструкторы, не принимающие указатель на вышестоящий ресурс памяти, используют в качестве вышестоящего ресурса памяти возвращаемое значение std::pmr::get_default_resource.
1,2) Устанавливает значение текущего буфера в null, а размер следующего буфера — в размер, определяемый реализацией.
3,4) Устанавливает значение текущего буфера в null, а размер следующего буфера — в размер не меньше
initial_size.
5,6) Устанавливает значение текущего буфера в
buffer, а размер следующего буфера — в buffer_size (но не меньше 1). Затем увеличивает размер следующего буфера в соответствии с коэффициентом роста, определяемым реализацией (который не обязательно должен быть целым числом).
7) Конструктор копирования удалён.
Параметры
| upstream | - | вышестоящий ресурс памяти; должен указывать на действительный ресурс памяти |
| initial_size | - | минимальный размер первого выделяемого буфера; должен быть больше нуля |
| buffer | - | исходный буфер для использования |
| buffer_size | - | размер исходного буфера; не может превышать количество байтов в buffer |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/memory/monotonic_buffer_resource/monotonic_buffer_resource