@[uibn](/user/60215) Split(r+1)会使L的迭代器失效
by JRzyh @ 2021-05-04 12:07:38
@[uibn](/user/60215) 因为你需要保证 `split(r + 1)` 和 `split(l)` 返回的迭代器有效。
假设我们先 `split(l)`,再 `split(r + 1)`. 考虑以下情形:
假设 `set` 里面有一个区间 `[l, r')`,其中 `r + 1 < r'`.
那么 `split(l)` 会返回 `[l, r')` 的 iterator. 但是后续 `split(r + 1)` 的时候,会把这个 iterator erase,并创建区间 `[l, r + 1)` 和 `[r + 1, r')`.
在这之后,`split(l)` 的迭代器(指向 `[l, r')` )已经失效了。
by ftiasch @ 2021-05-04 12:10:57
叉姐!
by lyhqwq @ 2021-05-04 12:15:49
@[happy_yuyu](/user/340119) 你好!
by ftiasch @ 2021-05-04 12:20:29
@[ftiasch](/user/22682) 谢谢!
by uibn @ 2021-05-05 14:13:04