How to invalidate an iterator?

后端 未结 4 895
一个人的身影
一个人的身影 2021-01-14 23:44

Since I know an iterator in the program could be invalidated by some previous operation, I want to invalidate it explicitly. Such as assign NULL to a pointer to invalidate i

4条回答
  •  日久生厌
    2021-01-15 00:15

    Shouldn't this always work? (iterators are always assignable and default-constructible)

    template 
    void foo(Iter it){
      it = Iter(); // invalidate
    }
    

提交回复
热议问题