std :: list insert()使迭代器无效?

时间:2018-07-23 18:15:10

标签: c++ list insert listiterator

说我有一个简单的程序,

int main(void) {
  std::list<int> l;
  auto it = l.begin();
  auto it2 = l.insert(l.begin(), 5);
  std::cout << (it == it2) << std::endl;
}

这不是表明迭代器it已通过插入列表而无效。但是C ++标准指出,插入列表不会使迭代器无效。

最初it可能会保留nullptr,因为列表为空。现在it不再指向列表的任何迭代器部分。那么it是否无效?

0 个答案:

没有答案