首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ForwardIterator

ForwardIteratorIterator它可以从指向元素读取数据。

不像InputIteratorOutputIterator,可用于多通算法。

所需

类型It满足ForwardIterator如果。

  • 类型It满足InputIterator
  • 类型It满足DefaultConstructible
  • 对象的类型。It提供多通保证如下所述
  • 类型std::iterator_traits<It>::reference一定是
  • T&如果It满足OutputIterator%28It是可变的%29
  • const T&否则%28It不变%29,

%28T表示的类型。std::iterator_traits<It>::value_type%29

  • 对于相同的底层序列和自C++14%29以来的值初始化-迭代器%28,对所有迭代器定义相等和不等式比较。还有,给予。
  • i,可解引用型迭代器It
  • reference,表示的类型std::iterator_traits<It>::reference

下列表达式必须有效并具有指定的效果。

Expression

Return type

Equivalent expression

Notes

i++

It

It ip=i; ++i; return ip;

?

*i++

reference

?

?

mutable ForwardIteratorForwardIterator,它还能满足OutputIterator所需经费。

多通保证

给出ab、类型的可解引用迭代器It...

  • 如果ab比较相等%28a == b在上下文上可转换为true%29,则两者都是不可撤销的,或*a*b是绑定到同一个对象的引用吗?
  • 通过可变的分配ForwardIterator迭代器不能使迭代器%28隐式无效,原因是reference定义为真实引用%29
  • 递增a不更改读取的值。a%28It是原始指针类型或表达式。(void)++It(a), *a与表达式等效。*a%29
  • a == b暗示++a == ++b

Singular iterators A value-initialized ForwardIterator behaves like the past-the-end iterator of some unspecified empty container: it compares equal to all value-initialized ForwardIterators of the same type.

(since C++14)

另见

  • Iterator库
代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com