A LegacyContiguousIterator is a LegacyIterator whose logically adjacent elements are also physically adjacent in memory.
A pointer to an element of an array satisfies all requirements of LegacyContiguousIterator.
The type It
satisfies LegacyContiguousIterator if.
It
satisfies LegacyIterator And, for every.
a
, a dereferenceable iterator of type It
n
, an integral value such that.
a + n
is a valid and dereferenceable iterator value then.
*(a + n)
is equivalent to *(std::addressof(*a) + n)
. The following standard library types are LegacyContiguousIterators.
array::iterator
. basic_string_view::iterator
. basic_string::iterator
. vector::iterator
for value_type
other than bool
. begin(valarray)
and end(valarray)
. Fancy pointer to object types are also required to satisfy LegacyContiguousIterator.
LegacyContiguousIterator is replaced with the | (since C++20) |
(C++20) | specifies that a random_access_iterator is a contiguous iterator, referring to elements that are contiguous in memory (concept) |
Iterator library | provides definitions for iterators, iterator traits, adaptors, and utility functions |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/named_req/ContiguousIterator