Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/named req/ContiguousIterator"

From cppreference.com
< cpp‎ | named req
m (Text replace - "cpp/concept" to "cpp/named req")
m (Text replace - "{{concept" to "{{named req")
Line 2: Line 2:
 
{{cpp/named req/navbar}}
 
{{cpp/named req/navbar}}
  
A {{tt|ContiguousIterator}} is an {{concept|Iterator}} whose logically adjacent elements are also physically adjacent in memory.
+
A {{tt|ContiguousIterator}} is an {{named req|Iterator}} whose logically adjacent elements are also physically adjacent in memory.
  
 
A pointer to an element of an array satisfies all requirements of {{tt|ContiguousIterator}}.
 
A pointer to an element of an array satisfies all requirements of {{tt|ContiguousIterator}}.
Line 9: Line 9:
 
The type {{tt|It}} satisfies {{tt|ContiguousIterator}} if
 
The type {{tt|It}} satisfies {{tt|ContiguousIterator}} if
  
* The type {{tt|It}} satisfies {{concept|Iterator}}
+
* The type {{tt|It}} satisfies {{named req|Iterator}}
  
 
And, for every
 
And, for every
Line 25: Line 25:
 
===Standard library===
 
===Standard library===
  
The following standard library types are {{concept|ContiguousIterator}}s.
+
The following standard library types are {{named req|ContiguousIterator}}s.
  
 
* {{ltt|cpp/container/array|array::iterator}}.
 
* {{ltt|cpp/container/array|array::iterator}}.

Revision as of 14:14, 15 June 2018

 
 
C++ named requirements
 

A ContiguousIterator 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 ContiguousIterator.

Requirements

The type It satisfies ContiguousIterator if

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

Standard library

The following standard library types are LegacyContiguousIterators.

See also