2004-01-27 17:03:46 +00:00
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" xml:lang = "en" lang = "en" >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" />
2004-11-02 14:31:27 +00:00
< meta name = "generator" content = "Docutils 0.3.6: http://docutils.sourceforge.net/" />
2004-01-27 17:03:46 +00:00
< title > Forward Traversal Concept</ title >
< link rel = "stylesheet" href = "default.css" type = "text/css" />
</ head >
< body >
< h1 class = "title" > Forward Traversal Concept</ h1 >
2004-11-02 14:31:27 +00:00
< div class = "document" id = "forward-traversal-concept" >
2004-01-27 17:03:46 +00:00
< p > A class or built-in type < tt class = "literal" >< span class = "pre" > X</ span ></ tt > models the < em > Forward Traversal</ em >
concept if, in addition to < tt class = "literal" >< span class = "pre" > X</ span ></ tt > meeting the requirements of Default
Constructible and Single Pass Iterator, the following expressions are
valid and respect the stated semantics.</ p >
2004-11-02 14:31:27 +00:00
< table border = "1" class = "table" >
2004-01-27 17:03:46 +00:00
< colgroup >
< col width = "38%" />
< col width = "34%" />
< col width = "27%" />
</ colgroup >
< thead valign = "bottom" >
< tr >< th colspan = "3" > Forward Traversal Iterator Requirements (in addition to Default Constructible and Single Pass Iterator)</ th >
</ tr >
< tr >< th > Expression</ th >
< th > Return Type</ th >
< th > Assertion/Note</ th >
</ tr >
</ thead >
< tbody valign = "top" >
< tr >< td >< tt class = "literal" >< span class = "pre" > X</ span > < span class = "pre" > u;</ span ></ tt ></ td >
< td >< tt class = "literal" >< span class = "pre" > X& </ span ></ tt ></ td >
< td > note: < tt class = "literal" >< span class = "pre" > u</ span ></ tt > may have a
singular value.</ td >
</ tr >
< tr >< td >< tt class = "literal" >< span class = "pre" > ++r</ span ></ tt ></ td >
< td >< tt class = "literal" >< span class = "pre" > X& </ span ></ tt ></ td >
< td >< tt class = "literal" >< span class = "pre" > r</ span > < span class = "pre" > ==</ span > < span class = "pre" > s</ span ></ tt > and < tt class = "literal" >< span class = "pre" > r</ span ></ tt > is
dereferenceable implies
< tt class = "literal" >< span class = "pre" > ++r</ span > < span class = "pre" > ==</ span > < span class = "pre" > ++s.</ span ></ tt ></ td >
</ tr >
< tr >< td >< tt class = "literal" >< span class = "pre" > iterator_traits< X> ::difference_type</ span ></ tt ></ td >
< td > A signed integral type representing
the distance between iterators</ td >
< td > </ td >
</ tr >
< tr >< td >< tt class = "literal" >< span class = "pre" > iterator_traversal< X> ::type</ span ></ tt ></ td >
< td > Convertible to
< tt class = "literal" >< span class = "pre" > forward_traversal_tag</ span ></ tt ></ td >
< td > </ td >
</ tr >
</ tbody >
</ table >
</ div >
< hr class = "footer" />
< div class = "footer" >
< a class = "reference" href = "ForwardTraversal.rst" > View document source</ a > .
Generated by < a class = "reference" href = "http://docutils.sourceforge.net/" > Docutils</ a > from < a class = "reference" href = "http://docutils.sourceforge.net/rst.html" > reStructuredText</ a > source.
</ div >
</ body >
</ html >