Create a proctor for moving and destroying the specified array ranges.
Synopsis
Declared in <bslalg_autoarraymovedestructor.h>
AutoArrayMoveDestructor(
OBJECT_TYPE* destination,
OBJECT_TYPE* begin,
OBJECT_TYPE* middle,
OBJECT_TYPE* end,
ALLOCATOR allocator = ALLOCATOR());
Description
Create a proctor for the sequence of elements of the parameterized OBJECT_TYPE in the specified range [ begin, end )] which, upon destruction, moves the range [ begin, middle )] to the specified destination and destroys the [ middle, end )] range. The behavior is undefined unless begin, middle, and end refer to a contiguous sequence of initialized OBJECT_TYPE objects, where begin <= middle <= end, and destination refers to a contiguous sequence of (uninitialized) memory of sufficient size to hold end ‐ begin OBJECT_TYPE objects (which must not overlap [begin, end)]).
Parameters
Name |
Description |
destination |
address to which guarded elements are moved |
begin |
beginning of the guarded range of initialized elements |
middle |
first element to move (also end of the destroy range) |
end |
end of the guarded range (one past the last element) |
allocator |
allocator used to destroy elements |
Created with MrDocs