C++ 具名要求: LegacyContiguousIterator
来自cppreference.com
遗留连续迭代器 (LegacyContiguousIterator) 是遗留迭代器 (LegacyIterator) ,其所指向的逻辑相邻元素也在内存中物理上相邻。
指向数组元素的指针满足遗留连续迭代器 (LegacyContiguousIterator) 的所有要求。
要求
以下情况下,类型 It
满足遗留连续迭代器 (LegacyContiguousIterator)
- 类型
It
满足遗留迭代器 (LegacyIterator)
并且,对于每个
-
a
,为It
类型的可解引用迭代器 -
n
,为整型值
使得
- a + n 为有效的可解引用迭代器值
则
- *(a + n) 等价于 *(std::addressof(*a) + n)。
标准库
下列标准库类型是遗留连续迭代器 (LegacyContiguousIterator) 。
- array::iterator。
- basic_string_view::iterator。
- vector::iterator,对于除 bool 以外的 value_type。
- begin(valarray) 和 end(valarray) 的返回类型。