Concurrently safe member functions¶
All member functions in this section can be performed concurrently with each other.
Pushing elements¶
void push( const value_type& value );Pushes a copy of
valueinto the container.Requirements: the type
Tshall meet theCopyInsertablerequirements from [container.requirements] ISO C++ Standard section.
void push( value_type&& value );Pushes
valueinto the container using move semantics.Requirements: the type
Tshall meet theMoveInsertablerequirements from [container.requirements] ISO C++ Standard section.
valueis left in a valid, but unspecified state.
template <typename... Args> void emplace( Args&&... args );Pushes a new element constructed from
argsinto the container.Requirements: the type
Tshall meet theEmplaceConstructiblerequirements from [container.requirements] ISO C++ Standard section.
Popping elements¶
bool try_pop( value_type& value );If the container is empty, does nothing.
Otherwise, copies the last element from the container and assigns it to the
value. The popped element is destroyed.Requirements: the type
Tshall meet theMoveAssignablerequirements from [moveassignable] ISO C++ Standard section.Returns:
trueif the element was popped,falseotherwise.
get_allocator¶
allocator_type get_allocator() const;Returns: a copy of the allocator, associated with
*this.