C++ named requirements: LegacyContiguousIterator
From cppreference.com
                    
                                        
                    
                    
                                                            
                    A LegacyContiguousIterator is an LegacyIterator whose logically adjacent elements are also physically adjacent in memory.
A pointer to an element of an array satisfies all requirements of LegacyContiguousIterator.
Requirements
The type It satisfies LegacyContiguousIterator if
-  The type 
Itsatisfies LegacyIterator 
And, for every
-  
a, a dereferenceable iterator of typeIt -  
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).
 
Standard library
The following standard library types are LegacyContiguousIterators.
- array::iterator.
 - basic_string_view::iterator.
 - vector::iterator for value_type other than bool.
 - The return type of begin(valarray) and end(valarray)