|
|
@ -44,8 +44,8 @@ |
|
|
|
// an issue if insertion and deletion operations are interleaved with the use of
|
|
|
|
// an issue if insertion and deletion operations are interleaved with the use of
|
|
|
|
// more than one iterator, pointer, or reference simultaneously. For this
|
|
|
|
// more than one iterator, pointer, or reference simultaneously. For this
|
|
|
|
// reason, `insert()` and `erase()` return a valid iterator at the current
|
|
|
|
// reason, `insert()` and `erase()` return a valid iterator at the current
|
|
|
|
// position. Another important difference is that key-types must be
|
|
|
|
// position (and `extract()` cannot be used in this way). Another important
|
|
|
|
// copy-constructible.
|
|
|
|
// difference is that key-types must be copy-constructible.
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// Another API difference is that btree iterators can be subtracted, and this
|
|
|
|
// Another API difference is that btree iterators can be subtracted, and this
|
|
|
|
// is faster than using std::distance.
|
|
|
|
// is faster than using std::distance.
|
|
|
@ -325,7 +325,8 @@ class btree_map |
|
|
|
// btree_map::extract()
|
|
|
|
// btree_map::extract()
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// Extracts the indicated element, erasing it in the process, and returns it
|
|
|
|
// Extracts the indicated element, erasing it in the process, and returns it
|
|
|
|
// as a C++17-compatible node handle. Overloads are listed below.
|
|
|
|
// as a C++17-compatible node handle. Any references, pointers, or iterators
|
|
|
|
|
|
|
|
// are invalidated. Overloads are listed below.
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// node_type extract(const_iterator position):
|
|
|
|
// node_type extract(const_iterator position):
|
|
|
|
//
|
|
|
|
//
|
|
|
|