bsl::multiset::erase

erase overloads

Synopses

Declared in <bslstl_multiset.h>

Remove from this multiset the value_type object at the specified position, and return an iterator referring to the element immediately following the removed element, or to the past-the-end position if the removed element was the last element in the sequence of elements maintained by this multiset. This method invalidates only iterators and references to the removed element and previously saved values of the end() iterator. The behavior is undefined unless position refers to a value_type object in this multiset.

multiset<KEY, COMPARATOR, ALLOCATOR>::iterator
erase(const_iterator position);
» more...

Remove from this multiset all value_type objects equivalent to the specified key, if they exist, and return the number of erased objects; otherwise, if there are no value_type objects equivalent to key, return 0 with no other effect. This method invalidates only iterators and references to the removed element and previously saved values of the end() iterator.

multiset<KEY, COMPARATOR, ALLOCATOR>::size_type
erase(key_type const& key);
» more...

Remove all elements matching the specified transparent key.

template<class t_KEY>
size_type
erase(t_KEY&& key)
requires BloombergLP::bslmf::IsTransparentPredicate<COMPARATOR,
                                                   t_KEY>::value &&
        !is_convertible<BSLS_COMPILERFEATURES_FORWARD_REF(t_KEY),
                        iterator>::value &&
        !is_convertible<BSLS_COMPILERFEATURES_FORWARD_REF(t_KEY),
                        const_iterator>::value;
» more...

Remove from this multiset the value_type objects starting at the specified first position up to, but not including the specified last position, and return last. This method invalidates only iterators and references to the removed element and previously saved values of the end() iterator. The behavior is undefined unless first and last either refer to elements in this multiset or are the end iterator, and the first position is at or before the last position in the ordered sequence provided by this container.

multiset<KEY, COMPARATOR, ALLOCATOR>::iterator
erase(
    const_iterator first,
    const_iterator last);
» more...