使用std :: string迭代器查找它的字符串的开头和结尾

Phi*_*ltt 10 c++ iterator stdstring

只给出一个std :: string迭代器,是否可以确定字符串的起点和终点?假设我无法访问字符串对象,因此无法调用string.begin()和string.end(),我所能做的就是递增或递减迭代器并测试值.

谢谢,菲尔

小智 6

最简洁的答案是不.答案很长,因为预计迭代器不会知道迭代的容器或范围,所以它们只能用于

  • 能够跳到下一个元素(inc或dec到next或prev)
  • 取消引用自己以显示对它们指向的值的引用
  • 当然,将自己与其他迭代器进行比较,最重要的是某种"终结"迭代器.

此外,某些类型的迭代器可能不仅仅是上述类型,但主要是它们都需要以某种形式或以其他形式执行上述操作.