< ! D O C T Y P E   H T M L   P U B L I C   " - / / W 3 C / / D T D   H T M L   4 . 0 1 / / E N " 
 
       " h t t p : / / w w w . w 3 . o r g / T R / h t m l 4 / s t r i c t . d t d " > 
 
 < h t m l > 
 
 < h e a d > 
 
 < m e t a   h t t p - e q u i v = " C o n t e n t - T y p e "   c o n t e n t = " t e x t / h t m l ; c h a r s e t = U T F - 8 " > 
 
 
 
 < s t y l e   t y p e = " t e x t / c s s " > 
 
 
 
 b o d y   {   c o l o r :   # 0 0 0 0 0 0 ;   b a c k g r o u n d - c o l o r :   # F F F F F F ;   } 
 
 
 
 d e l   {   t e x t - d e c o r a t i o n :   l i n e - t h r o u g h ;   c o l o r :   # 8 B 0 0 4 0 ;   } 
 
 i n s   {   t e x t - d e c o r a t i o n :   u n d e r l i n e ;   c o l o r :   # 0 0 5 1 0 0 ;   } 
 
 
 
 d e l . n 4 3 4 6   {   t e x t - d e c o r a t i o n :   l i n e - t h r o u g h ;   c o l o r : b l u e ; } 
 
 i n s . n 4 3 4 6   {   t e x t - d e c o r a t i o n :   u n d e r l i n e ;   c o l o r :   b l u e ; } 
 
 
 
 p . e x a m p l e   {   m a r g i n - l e f t :   2 e m ;   } 
 
 p r e . e x a m p l e   {   m a r g i n - l e f t :   2 e m ;   } 
 
 d i v . e x a m p l e   {   m a r g i n - l e f t :   2 e m ;   } 
 
 
 
 c o d e . e x t r a c t   {   b a c k g r o u n d - c o l o r :   # F 5 F 6 A 2 ;   } 
 
 p r e . e x t r a c t   {   m a r g i n - l e f t :   2 e m ;   b a c k g r o u n d - c o l o r :   # F 5 F 6 A 2 ; 
 
     b o r d e r :   1 p x   s o l i d   # E 1 E 2 8 E ;   } 
 
 
 
 p . f u n c t i o n   {   } 
 
 . a t t r i b u t e   {   m a r g i n - l e f t :   2 e m ;   } 
 
 . a t t r i b u t e   d t   {   f l o a t :   l e f t ;   f o n t - s t y l e :   i t a l i c ; 
 
     p a d d i n g - r i g h t :   1 e x ;   } 
 
 . a t t r i b u t e   d d   {   m a r g i n - l e f t :   0 e m ;   } 
 
 
 
 b l o c k q u o t e . s t d   {   c o l o r :   # 0 0 0 0 0 0 ;   b a c k g r o u n d - c o l o r :   # F 1 F 1 F 1 ; 
 
     b o r d e r :   1 p x   s o l i d   # D 1 D 1 D 1 ; 
 
     p a d d i n g - l e f t :   0 . 5 e m ;   p a d d i n g - r i g h t :   0 . 5 e m ;   } 
 
 b l o c k q u o t e . s t d d e l   {   t e x t - d e c o r a t i o n :   l i n e - t h r o u g h ; 
 
     c o l o r :   # 0 0 0 0 0 0 ;   b a c k g r o u n d - c o l o r :   # F F E B F F ; 
 
     b o r d e r :   1 p x   s o l i d   # E C D 7 E C ; 
 
     p a d d i n g - l e f t :   0 . 5 e m ;   p a d d i n g - r i g h t :   0 . 5 e m ;   ;   } 
 
 
 
 b l o c k q u o t e . s t d i n s   {   / * t e x t - d e c o r a t i o n :   u n d e r l i n e ; * / 
 
     c o l o r :   # 0 0 0 0 0 0 ;   b a c k g r o u n d - c o l o r :   # C 8 F F C 8 ; 
 
     b o r d e r :   1 p x   s o l i d   # B 3 E B B 3 ;   p a d d i n g :   0 . 5 e m ;   } 
 
 
 
 t a b l e   {   b o r d e r :   1 p x   s o l i d   b l a c k ;   b o r d e r - s p a c i n g :   0 p x ; 
 
     m a r g i n - l e f t :   a u t o ;   m a r g i n - r i g h t :   a u t o ;   } 
 
 t h   {   t e x t - a l i g n :   l e f t ;   v e r t i c a l - a l i g n :   t o p ; 
 
     p a d d i n g - l e f t :   0 . 8 e m ;   b o r d e r :   n o n e ;   } 
 
 t d   {   t e x t - a l i g n :   l e f t ;   v e r t i c a l - a l i g n :   t o p ; 
 
     p a d d i n g - l e f t :   0 . 8 e m ;   b o r d e r :   n o n e ;   } 
 
 
 
 < / s t y l e > 
 
 
 
 < t i t l e > M u l t i d i m e n s i o n a l   b o u n d s ,   o f f s e t   a n d   a r r a y _ v i e w ,   r e v i s i o n   6 < / t i t l e > 
 
 
 
 < / h e a d > 
 
 
 
 < b o d y > 
 
 < h 1 > M u l t i d i m e n s i o n a l   b o u n d s ,   o f f s e t   a n d   a r r a y _ v i e w ,   r e v i s i o n   6 < / h 1 > 
 
 
 
 < p > 
 
 I S O / I E C   J T C 1   S C 2 2   W G 2 1   N 4 4 9 4   -   2 0 1 5 - 0 5 - 0 1 
 
 < / p > 
 
 
 
 < p > 
 
 R e p l y - t o : < b r > 
 
 Au k a s z   M e n d a k i e w i c z   & l t ; l u k a s z m e @ m i c r o s o f t . c o m & g t ; < b r > 
 
 H e r b   S u t t e r   & l t ; h s u t t e r @ m i c r o s o f t . c o m & g t ; 
 
 < / p > 
 
 
 
 
 
 < h 2 > < a   n a m e = " O v e r v i e w " > O v e r v i e w < / a > < / h 2 > 
 
 
 
 < p > 
 
 R e v i s i o n   6   ( N 4 4 9 4 )   i n c o r p o r a t e s   t h e   c h a n g e s   r e q u e s t e d   b y   L W G   i n   C o l o g n e   m e e t i n g ,   m a r k e d   a s   < d e l   c l a s s = " n 4 3 4 6 " > d e l e t i o n s < / d e l >   a n d   < i n s   c l a s s = " n 4 3 4 6 " > i n s e r t i o n s < / i n s > . 
 
 < / p > 
 
 < p > 
 
 T h e   f o l l o w i n g   s u g g e s t i o n s   w e r e   i m p l e m e n t e d   f u l l y : 
 
 < o l > 
 
 < l i > R e p h r a s e d   c o o r d . g e n e r a l   a v o i d   r e f e r e n c e s   t o   m a t h e m a t i c a l   e n t i t e s . < / l i > 
 
 < l i > R e n a m e d   < c o d e > i n d e x < / c o d e >   t o   < c o d e > o f f s e t < / c o d e > . < / l i > 
 
 < l i > C h a n g e d   < c o d e > i n t   R a n k < / c o d e >   t e m p l a t e   p a r a m e t e r   t o   < c o d e > s i z e _ t   R a n k < / c o d e >   t h r o u g h o u t   t h e   d o c u m e n t . < / l i > 
 
 < l i > M a d e   < c o d e > o f f s e t < / c o d e > ,   < c o d e > b o u n d s < / c o d e >   a n d   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   b i n a r y   o p e r a t o r s   ( a p a r t   f r o m   < c o d e > @ = < / c o d e >   f o r m s )   f r e e   f u n c t i o n s . < / l i > 
 
 < l i > R e p l a c e d   t e r m   " c o m p o n e n t "   w i t h   " e l e m e n t "   w h e n   r e f e r r i n g   t o   t h e   i n d i v i d u a l   c o n s t i t u e n t s   o f   < c o d e > o f f s e t < / c o d e >   o r   < c o d e > b o u n d s < / c o d e > . < / l i > 
 
 < l i > I n   c o o r d . b o u n d s . r e q u i r e   r e p l a c e d   p r o s e   w i t h   a n   e q u i v a l e n t   m a t h e m a t i c a l   e x p r e s s i o n . < / l i > 
 
 < l i > I n   c o o r d . b o u n d s . i t e r a t o r   a n d   c o o r d . b o u n d s . i t e r a t o r . r e q u i r e   r e m o v e d   t h e   r e q u i r e m e n t   o n   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   t o   r e p r e s e n t   a   r a n d o m   a c c e s s   i t e r a t o r ,   r e p l a c i n g   w i t h   " a s - i f "   p h r a s i n g . < / l i > 
 
 < l i > I n   t h e   d e s c r i p t i o n   o f   < c o d e > b o u n d s _ i t e r a t o r &   o p e r a t o r + + ( ) < / c o d e >   r e p l a c e d   t h e   c o d e   s n i p p e t   w i t h   e q u i v a l e n t   p r o s e . < / l i > 
 
 < l i > I n   v i e w s . g e n e r a l   c h a n g e d   t h e   f o n t   b a c k   t o   n o n - m o n o s p a c e . < / l i > 
 
 < l i > R e m o v e d   v i e w s . r e q u i r e ,   d u p l i c a t i n g   i t   a s   a r r a y v i e w . r e q u i r e   a n d   s t r i d e d a r r a y v i e w . r e q u i r e . < / l i > 
 
 < l i > R e m o v e d   r e d u n d a n t   a s s i g n m e n t   o p e r a t o r s   o n   < c o d e > a r r a y _ v i e w < / c o d e >   a n d   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e > . < / l i > 
 
 < l i > E m p l o y e d   " e x p o s i t i o n   o n l y "   d a t a   m e m b e r s   i s   t h e   d e s c r i p t i o n s   o f   < c o d e > a r r a y _ v i e w < / c o d e >   a n d   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   s e m a n t i c s . < / l i > 
 
 < l i > R e p h r a s e d   t h e   f i r s t   p a r a g r a p h   i n   a r r a y v i e w . c o n s   t o   a v o i d   a m b i g u i t y   i n   b i n d i n g   o f   t h e   t o k e n   " t y p e " . < / l i > 
 
 < l i > I n   < c o d e > c o n s t e x p r   a r r a y _ v i e w ( V i e w a b l e & &   v w ) < / c o d e >   r e p h r a s e d   t h e   t h i r d   b u l l e t   p o i n t . < / l i > 
 
 < / o l > 
 
 < p > 
 
 T h e   f o l l o w i n g   s u g g e s t i o n   w a s   i m p l e m e n t e d   p a r t i a l l y : 
 
 < o l > 
 
 < l i > I n s t e a d   o f   t h e   < c o d e > a r r a y _ v i e w ( A r r a y T y p e &   a r r ) < / c o d e >   c o n s t r u c t o r   b e i n g   c o m p l e t e l y   r e m o v e d ,   i t   h a s   b e e n   c o n s t r a i n e d   t o   1 - D   c a s e   a s   t h e   C o m m i t t e e   i n d i c a t e d   t h a t   s u c h   c a s e   d o e s   n o t   e x h i b i t   t h e   u n d e f i n e d   b e h a v i o r .   W e   b e l i e v e   t h a t   t h e   r e q u e s t   t o   r e m o v e   i t   c o m p l e t e l y   w a s   a   m i s s t a t m e n t . < / l i > 
 
 < / o l > 
 
 < p > 
 
 T h e   f o l l o w i n g   s u g g e s t i o n   w a s   n o t   i m p l e m e n t e d : 
 
 < o l > 
 
 < l i > T h e   s e m a n t i c s   o f   t h e   p r o p o s e d   t y p e s   w e r e   n o t   e x t e n d e d   t o   a l l o w   r a n k - 0   c a s e s .   W e   f e e l   t h a t   w e   l a c k   s u f f i c i e n t   p r a c t i c a l   e x p e r i e n c e   i n   u s i n g   s u c h   c a s e s   a n d   w e   a r e   a f r a i d   o f   s o m e   c o n t e n t i o n   p o i n t s   w h e n   i t   c o m e s   t o   d e f i n i n g   t h e i r   d e t a i l e d   s e m a n t i c s .   W e   o b s e r v e   t h a t   s u c h   a n   e x t e n s i o n   c a n   b e   i n t r o d u c e d   i n   f u t u r e   w i t h o u t   c o n f l i c t i n g   w i t h   t h e   p r o p o s a l   i n   t h e   c u r r e n t   f o r m . < / l i > 
 
 < / o l > 
 
 
 
 < p > 
 
 R e v i s i o n   5   ( < a   h r e f = " h t t p : / / w w w . o p e n - s t d . o r g / j t c 1 / s c 2 2 / w g 2 1 / d o c s / p a p e r s / 2 0 1 5 / n 4 3 4 6 . h t m l " > N 4 3 4 6 < / a > )   i n c o r p o r a t e s   t h e   c h a n g e s   r e q u e s t e d   b y   L W G   i n   U r b a n a - C h a m p a i g n   m e e t i n g . 
 
 < / p > 
 
 
 
 < p > 
 
 R e v i s i o n   4   ( < a   h r e f = " h t t p : / / w w w . o p e n - s t d . o r g / j t c 1 / s c 2 2 / w g 2 1 / d o c s / p a p e r s / 2 0 1 4 / n 4 1 7 7 . h t m l " > N 4 1 7 7 < / a > )   c o n t a i n s   t h e   f o l l o w i n g   c h a n g e s : 
 
 < o l > 
 
 < l i > T h e   o r d e r   o f   s o m e   o f   t h e   < c o d e > a r r a y _ v i e w < / c o d e >   a n d   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   c o n s t r u c t o r   p a r a m e t e r s   h a v e   b e e n   s w i t c h e d   f r o m   { < i > s i z e < / i > ,   < i > l o c a t i o n < / i > }   t o   { < i > l o c a t i o n < / i > ,   < i > s i z e < / i > }   f o r   c o n s i s t e n c y   w i t h   t h e   e x i s t i n g   p r a c t i c e   i n   S T L   ( v i d e   < c o d e > c o p y _ n < / c o d e > ) . < / l i > 
 
 < l i > A l i a s   t e m p l a t e s   f o r   c o n s t a n t   v i e w s   h a v e   b e e n   i n t r o d u c e d . < / l i > 
 
 < / o l > 
 
 
 
 < p > 
 
 R e v i s i o n   3   ( < a   h r e f = " h t t p : / / o p e n - s t d . o r g / J T C 1 / S C 2 2 / W G 2 1 / d o c s / p a p e r s / 2 0 1 4 / n 4 0 8 7 . h t m l " > N 4 0 8 7 < / a > )   i n c o r p o r a t e s   t h e   f e e d b a c k   r e c e i v e d   i n   R a p p e r s w i l   f r o m   L E W G   a n d   s o m e   o t h e r   m i n o r   f i x e s : 
 
 < o l > 
 
 < l i > F i x e d   s p e c i f i c a t i o n   o f   < c o d e > i n i t i a l i z e r _ l i s t < / c o d e >   c o n s t r u c t o r s   i n   < c o d e > i n d e x < / c o d e >   a n d   < c o d e > b o u n d s < / c o d e >   & m d a s h ;   t h e   s i z e   o f   t h e   < c o d e > i n i t i a l i z e r _ l i s t < / c o d e >   c a n n o t   a l w a y s   b e   v e r i f i e d   a t   t h e   c o m p i l e - t i m e ,   s o   t h e   c h e c k   m u s t   b e   e x p r e s s e d   a s   " R e q u i r e s "   i n s t e a d   o f   S F I N A E . < / l i > 
 
 < u l > 
 
 < l i > N o t e :   L E W G   s u g g e s t e d   t o   t r y   u s i n g   c o n s t r a i n e d   v a r i a d i c   c o n s t r u c t o r   t e m p l a t e   i n s t e a d   o f   < c o d e > i n i t i a l i z e r _ l i s t < / c o d e >   c o n s t r u c t o r ,   a s   t h e   f o r m e r   m i g h t   r e j e c t   t h e   w r o n g   n u m b e r   o f   a r g u m e n t s   i n   t h e   c o m p i l e   t i m e .   W e   h a v e   f o u n d   t h a t   w h i l e   w e   c a n   a l m o s t   f u l l y   e m u l a t e   t h e   b e h a v i o r   o f   e . g .   < c o d e > i n d e x & l t ; 2 & g t ; { 1 , 2 } < / c o d e >   i m p l e m e n t e d   a s   " < c o d e > i n i t i a l i z e r _ l i s t < / c o d E >   w i t h   c o n s t r a i n e d   s i z e " ,   t h e   s o l u t i o n   c o m e s   w i t h   t h e   c o s t   o f   h i g h   c o m p l e x i t y   i n   s p e c i f y i n g   t h e   i n t e n d e d   b e h a v i o r   & m d a s h ;   b a s i c a l l y   d u p l i c a t i n g   t h e   l a n g u a g e   r u l e s   i n   t h e   l i b r a r y .   I t   w o u l d   p r o b a b l y   a l s o   b e   f r a g i l e   i f   a n y   o f   t h e   l a n g u a g e   r u l e s   c h a n g e .   U l t i m a t e l y   w e   h a v e   d e c i d e d   t h a t   t h e   a d d e d   d i a g n o s a b i l i t y   b e n e f i t   i s   n o t   w o r t h   t h e   c o s t . < / l i > 
 
 < / u l > 
 
 < l i > I m p r o v e d   t h e   w o r d i n g   f o r   < c o d e > o p e r a t o r - < / c o d e >   a n d   < c o d e > o p e r a t o r - = < / c o d e >   i n   < c o d e > i n d e x < / c o d e >   a n d   < c o d e > b o u n d s < / c o d e >   t o   a v o i d   n e g a t i n g   < c o d e > < v a r > r h s < / v a r > < / c o d e > . < / l i > 
 
 < l i > A d d e d   < c o d e > ( c o n s t _ ) i t e r a t o r < / c o d e >   t y p e   a l i a s e s   i n   < c o d e > b o u n d s < / c o d e > . < / l i > 
 
 < l i > S l i g h t l y   i m p r o v e d   t h e   w o r d i n g   i n   t h e   < c o d e > a r r a y _ v i e w ( b o u n d s _ t y p e   b o u n d s ,   p o i n t e r   p t r ) < / c o d e >   s p e c i f i c a t i o n . < / l i > 
 
 < l i > S l i g h t l y   i m p r o v e d   t h e   w o r d i n g   i n   t h e   < c o d e > b o u n d s _ i t e r a t o r : : o p e r a t o r + + < / c o d e >   s p e c i f i c a t i o n . < / l i > 
 
 < l i > T i g h t e n e d   t h e   s p e c i f i c a t i o n   o f   v i e w s   t o   p r e v e n t   d e r i v e d - t o - b a s e   c o n v e r s i o n s . < / l i > 
 
 < l i > < c o d e > M a d e   a r r a y _ v i e w ( V i e w a b l e & & ) < / c o d e >   a n d   < c o d e > a r r a y _ v i e w ( A r r a y T y p e & ) < / c o d e >   c o n s t r u c t o r s   n o t   " e x p l i c i t " . < / l i > 
 
 < l i > F i x e d   < c o d e > a r r a y _ v i e w ( b o u n d s _ t y p e   b o u n d s ,   p o i n t e r   p t r ) < / c o d e >   c o n s t r u c t o r   n o t   t o   b e   " n o e x c e p t " . < / l i > 
 
 < l i > P r o v i d e d   a   d e f i n i t i o n   f o r   " u n i f o r m l y   s t r i d e d " . < / l i > 
 
 < l i > R e n a m e d   " g e n e r a l i z e d   v i e w s "   t o   " v i e w s " . < / l i > 
 
 < l i > C h a n g e d   < c o d e > i n d e x < / c o d e >   a n d   < c o d e > b o u n d s < / c o d e >   a r i t h m e t i c   o p e r a t o r s   f r o m   a c c e p t i n g   a n y   < c o d e > A r i t h m e t i c T y p e < / c o d e >   t o   o n l y   < c o d e > v a l u e _ t y p e < / c o d e > / < c o d e > p t r d i f f _ t < / c o d e > . < / l i > 
 
 < l i > I m p r o v e d   t h e   o v e r l o a d   r e s o l u t i o n   f o r   < c o d e > a r r a y _ v i e w < / c o d e >   c o n s t r u c t o r s   s o   t h a t   a l l   c o n v e r s i o n s   b e t w e e n   r e l a t e d   < c o d e > a r r a y _ v i e w < / c o d e > s   c a n   b e   < c o d e > n o e x c e p t < / c o d e > . < / l i > 
 
 < l i > S l i g h t l y   i m p r o v e d   c o n s i s t e n c y   a n d   m i s t a k e s   b e t w e e n   " t h i s   c o n s t r u c t o r "   a n d   " t h i s   f u n c t i o n "   w o r d i n g . < / l i > 
 
 < / o l > 
 
 
 
 
 
 < h 2 > < a   n a m e = " A c k n o w l e d g e m e n t s " > A c k n o w l e d g e m e n t s < / a > < / h 2 > 
 
 
 
 < p > 
 
 T h a n k s   t o   S t e p h a n   T .   L a v a v e j ,   M a t t h e w   F i o r a v a n t e ,   R o b e r t   K a w u l a k   a n d   t h e   m e m b e r s   o f   L E W G   f o r   t h e   s u g g e s t e d   i m p r o v e m e n t s .   T h a n k s   t o   t h e   i n t e r l o c u t o r s   a t   I S O   C + +   S t a n d a r d   -   F u t u r e   P r o p o s a l s   f o r u m   f o r   t h e   v a l u a b l e   f e e d b a c k .   T h a n k s   t o   a l l   c o r r e s p o n d e n t s   e x p r e s s i n g   f e e d b a c k   i n   p r i v a t e   e m a i l s . 
 
 < / p > 
 
 
 
 < h 2 > < a   n a m e = " W o r d i n g " > W o r d i n g   c h a n g e s < / a > < / h 2 > 
 
 
 
 < p > 
 
 T h e   p r o p o s e d   w o r d i n g   c h a n g e s   a r e   r e l a t i v e   t o 
 
 t h e   c o n t e n t s   o f   < a   h r e f = " h t t p : / / w w w . o p e n - s t d . o r g / j t c 1 / s c 2 2 / w g 2 1 / p r o t / 1 4 8 8 2 f d i s / n 3 9 3 6 . p d f " > N 3 9 3 6 < / a > . 
 
 < / p > 
 
 
 
 
 
 < h 3 > < a   n a m e = " h e a d e r s " > 1 7 . 6 . 1 . 2   H e a d e r s   [ h e a d e r s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 E d i t   w i t h i n   p a r a g r a p h   2   a s   f o l l o w s . 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d " > 
 
 < p > 
 
 T h e   C + +   s t a n d a r d   l i b r a r y   p r o v i d e s   < d e l > 5 3 < / d e l > < i n s > 5 5 < / i n s >   < e m > C + +   l i b r a r y   h e a d e r s < / e m > ,   a s   s h o w n   i n   T a b l e   1 4 . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 A d d   t h e   f o l l o w i n g   i t e m s   t o   t a b l e   1 4 . 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d " > 
 
 < p > 
 
 < i n s > < c o d e > & l t ; a r r a y _ v i e w & g t ; < / c o d e > < / i n s > < b r > 
 
 < i n s > < c o d e > & l t ; c o o r d i n a t e & g t ; < / c o d e > < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " u t i l i t i e s " > C h a p t e r   2 0   G e n e r a l   u t i l i t i e s   l i b r a r y   [ u t i l i t i e s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   r o w   t o   t a b l e   4 4   a s   f o l l o w s . 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d " > 
 
 < t a b l e > 
 
 < c a p t i o n > T a b l e   4 4 :   G e n e r a l   u t i l i t i e s   l i b r a r y   s u m m a r y < / c a p t i o n > 
 
 < t b o d y > 
 
 < t r > < t h > S u b c l a u s e < / t h > < t h > H e a d e r ( s ) < / t h > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . 2   U t i l i t y   c o m p o n e n t s < / t d > 
 
 < t d > < c o d e > & l t ; u t i l i t y & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . 3   P a i r s < / t d > 
 
 < t d > < c o d e > & l t ; u t i l i t y & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . 4   T u p l e s < / t d > 
 
 < t d > < c o d e > & l t ; t u p l e & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . 5   C o m p i l e - t i m e   i n t e g e r   s e q u e n c e s < / t d > 
 
 < t d > < c o d e > & l t ; u t i l i t y & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > < i n s > 2 0 . 6   M u l t i d i m e n s i o n a l   c o o r d i n a t e s < / i n s > < / t d > 
 
 < t d > < i n s > < c o d e > & l t ; c o o r d i n a t e & g t ; < / c o d e > < / i n s > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 6 < / d e l > < i n s > 7 < / i n s >   F i x e d - s i z e   s e q u e n c e s   o f   b i t s < / t d > 
 
 < t d > < c o d e > & l t ; b i t s e t & g t ; < b r > 
 
 & l t ; m e m o r y & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 7 < / d e l > < i n s > 8 < / i n s >   M e m o r y < / t d > 
 
 < t d > < c o d e > & l t ; c s t d l i b & g t ; < b r > 
 
 & l t ; c s t r i n g & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 8 < / d e l > < i n s > 9 < / i n s >   S m a r t   p o i n t e r s < / t d > 
 
 < t d > < c o d e > & l t ; m e m o r y & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 9 < / d e l > < i n s > 1 0 < / i n s >   F u n c t i o n   o b j e c t s < / t d > 
 
 < t d > < c o d e > & l t ; f u n c t i o n a l & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 1 0 < / d e l > < i n s > 1 1 < / i n s >   T y p e   t r a i t s < / t d > 
 
 < t d > < c o d e > & l t ; t y p e _ t r a i t s & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 1 1 < / d e l > < i n s > 1 2 < / i n s >   C o m p i l e - t i m e   r a t i o n a l   a r i t h m e t i c < / t d > 
 
 < t d > < c o d e > & l t ; r a t i o & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 1 2 < / d e l > < i n s > 1 3 < / i n s >   T i m e   u t i l i t i e s < / t d > 
 
 < t d > < c o d e > & l t ; c h r o n o & g t ; < b r > 
 
 & l t ; c t i m e & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 1 3 < / d e l > < i n s > 1 4 < / i n s >   S c o p e d   a l l o c a t o r s < / t d > 
 
 < t d > < c o d e > & l t ; s c o p e d _ a l l o c a t o r & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 0 . < d e l > 1 4 < / d e l > < i n s > 1 5 < / i n s >   T y p e   i n d e x e s < / t d > 
 
 < t d > < c o d e > & l t ; t y p e i n d e x & g t ; < / c o d e > < / t d > < / t r > 
 
 < / t b o d y > 
 
 < / t a b l e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d " > 2 0 . 6   M u l t i d i m e n s i o n a l   c o o r d i n a t e s   [ c o o r d ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n   a f t e r   t h e   < c o d e > i n t s e q < / c o d e >   s e c t i o n . 
 
 < / p > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . g e n e r a l " > 2 0 . 6 . 1   I n   g e n e r a l   [ c o o r d . g e n e r a l ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 T h i s   s u b c l a u s e   d e s c r i b e s   t h e   m u l t i d i m e n s i o n a l   c o o r d i n a t e s   l i b r a r y .   I t   p r o v i d e s   a   c l a s s   t e m p l a t e   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > < / c o d e >   w h i c h   < d e l   c l a s s = " n 4 3 4 6 " > r e p r e s e n t s   a   m a t h e m a t i c a l   v e c t o r   i n   a n   < v a r > N < / v a r > - d i m e n s i o n a l   d i s c r e t e   s p a c e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s   a n   < v a r > N < / v a r > - t u p l e   o f   c o o r d i n a t e s   r e p r e s e n t i n g   l o c a t i o n s   a n d   o f f s e t s   i n   < v a r > N < / v a r > - d i m e n s i o n a l   d a t a   s t r u c t u r e s < / i n s > ,   a   c l a s s   t e m p l a t e   < c o d e > b o u n d s < / c o d e >   w h i c h   < d e l   c l a s s = " n 4 3 4 6 " > r e p r e s e n t s   a x i s - a l i g n e d   r e c t a n g u l a r   b o u n d s   i n   s u c h   a   s p a c e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s   a n   < v a r > N < / v a r > - t u p l e   r e p r e s e n t i n g   e x t e n t s   o f   s u c h   d a t a   s t r u c t u r e s < / i n s > ,   a n d   a   c l a s s   t e m p l a t e   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   w h i c h   a l l o w s   i t e r a t i o n   o v e r   < d e l   c l a s s = " n 4 3 4 6 " > s u c h   a   s p a c e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s p a c e   d e f i n e d   b y   s u c h   e x t e n t s < / i n s > .   
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 A d d   a   n e w   s y n o p s i s : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < b > H e a d e r   < c o d e > & l t ; c o o r d i n a t e & g t ; < / c o d e >   s y n o p s i s < / b > 
 
 < / p > 
 
 
 
 < p r e > < c o d e > 
 
 # i n c l u d e   & l t ; i n i t i a l i z e r _ l i s t & g t ; 
 
 
 
 n a m e s p a c e   s t d   { 
 
     / /   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ] ,   c l a s s   t e m p l a t e   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ;   c l a s s   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ; 
 
 
 
     < i n s   c l a s s = " n 4 3 4 6 " > / /   [ c o o r d . o f f s e t . e q ] ,   o f f s e t   e q u a l i t y 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o o l   o p e r a t o r = = ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o o l   o p e r a t o r ! = ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / i n s > 
 
 
 
     / /   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . a r i t h ] ,   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   a r i t h m e t i c 
 
     < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r + ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r - ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r * ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ;   o p e r a t o r * ( p t r d i f f _ t   < v a r > v < / v a r > ,   c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r / ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > 
 
 
 
     / /   [ c o o r d . b o u n d s ] ,   c l a s s   t e m p l a t e   b o u n d s 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ;   c l a s s   b o u n d s ; 
 
 
 
     < i n s   c l a s s = " n 4 3 4 6 " > / /   [ c o o r d . b o u n d s . e q ] ,   b o u n d s   e q u a l i t y 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o o l   o p e r a t o r = = ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o o l   o p e r a t o r ! = ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / i n s > 
 
 
 
     / /   [ c o o r d . b o u n d s . a r i t h ] ,   b o u n d s   a r i t h m e t i c 
 
     < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r + ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / i n s > 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
         c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r + ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r - ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r * ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
         c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r * ( p t r d i f f _ t   < v a r > v < / v a r > ,   c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r / ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > 
 
 
 
     / /   [ c o o r d . b o u n d s . i t e r a t o r ] ,   c l a s s   t e m p l a t e   b o u n d s _ i t e r a t o r 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ;   c l a s s   b o u n d s _ i t e r a t o r ; 
 
 
 
     < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         b o o l                                     o p e r a t o r = = ( c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > , 
 
                                                                           c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         b o o l                                     o p e r a t o r ! = ( c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > , 
 
                                                                           c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         b o o l                                     o p e r a t o r & l t ; ( c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > , 
 
                                                                         c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         b o o l                                     o p e r a t o r & l t ; = ( c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > , 
 
                                                                           c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         b o o l                                     o p e r a t o r > ( c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > , 
 
                                                                         c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
     t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
         b o o l                                     o p e r a t o r > = ( c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > , 
 
                                                                           c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / i n s > 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
         b o u n d s _ i t e r a t o r & l t ; R a n k & g t ;   o p e r a t o r + ( t y p e n a m e   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; : : d i f f e r e n c e _ t y p e   < v a r > n < / v a r > , 
 
                                                                         c o n s t   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . o f f s e t " > 2 0 . 6 . 2   C l a s s   t e m p l a t e   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > < / c o d e >   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p r e > < c o d e > 
 
 n a m e s p a c e   s t d   { 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
     c l a s s   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   { 
 
     p u b l i c : 
 
         / /   c o n s t a n t s   a n d   t y p e s 
 
         s t a t i c   c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   r a n k   =   R a n k ; 
 
         u s i n g   r e f e r e n c e                       =   p t r d i f f _ t & ; 
 
         u s i n g   c o n s t _ r e f e r e n c e           =   c o n s t   p t r d i f f _ t & ; 
 
         u s i n g   s i z e _ t y p e                       =   s i z e _ t ; 
 
         u s i n g   v a l u e _ t y p e                     =   p t r d i f f _ t ; 
 
 
 
         / /   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . c n s t r ] ,   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   c o n s t r u c t i o n 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ( )   n o e x c e p t ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ( v a l u e _ t y p e   < v a r > v < / v a r > )   n o e x c e p t ;                       / /   o n l y   i f   R a n k   = =   1 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ( i n i t i a l i z e r _ l i s t & l t ; v a l u e _ t y p e & g t ;   < v a r > i l < / v a r > ) ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > / /   [ c o o r d . i n d e x . e q ] ,   i n d e x   e q u a l i t y 
 
         c o n s t e x p r   b o o l   o p e r a t o r = = ( c o n s t   i n d e x &   < v a r > r h s < / v a r > )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   b o o l   o p e r a t o r ! = ( c o n s t   i n d e x &   < v a r > r h s < / v a r > )   c o n s t   n o e x c e p t ; < / d e l > 
 
 
 
         / /   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . c m p t ] ,   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x   c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t   e l e m e n t < / i n s >   a c c e s s 
 
         c o n s t e x p r   r e f e r e n c e               o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > ) ; 
 
         c o n s t e x p r   c o n s t _ r e f e r e n c e   o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > )   c o n s t ; 
 
 
 
         / /   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . a r i t h ] ,   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   a r i t h m e t i c 
 
         < d e l   c l a s s = " n 4 3 4 6 " > c o n s t e x p r   i n d e x     o p e r a t o r + ( c o n s t   i n d e x &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         c o n s t e x p r   i n d e x     o p e r a t o r - ( c o n s t   i n d e x &   < v a r > r h s < / v a r > )   c o n s t ; < / d e l > 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r + = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   < v a r > r h s < / v a r > ) ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r - = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   < v a r > r h s < / v a r > ) ; 
 
 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r + + ( ) ;         / /   o n l y   i f   R a n k   = =   1 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >     o p e r a t o r + + ( i n t ) ;   / /   o n l y   i f   R a n k   = =   1 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r - - ( ) ;         / /   o n l y   i f   R a n k   = =   1 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >     o p e r a t o r - - ( i n t ) ;   / /   o n l y   i f   R a n k   = =   1 
 
 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >     o p e r a t o r + ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >     o p e r a t o r - ( )   c o n s t ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > c o n s t e x p r   i n d e x     o p e r a t o r * ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; 
 
         c o n s t e x p r   i n d e x     o p e r a t o r / ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; < / d e l > 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r * = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r / = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; 
 
     } ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . o f f s e t . r e q u i r e " > 2 0 . 6 . 2 . 1   G e n e r a l   r e q u i r e m e n t s   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . r e q u i r e ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 I f   < c o d e > R a n k < / c o d e >   i s   l e s s   t h a n   1   t h e   p r o g r a m   i s   i l l - f o r m e d . 
 
 < / p > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . o f f s e t . c n s t r " > 2 0 . 6 . 2 . 2   C o n s t r u c t i o n   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . c n s t r ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ( )   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 Z e r o - i n i t i a l i z e s   e a c h   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ( v a l u e _ t y p e   < v a r > v < / v a r > )   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 I n i t i a l i z e s   t h e   0 < s u p > t h < / s u p >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   w i t h   < c o d e > < v a r > v < / v a r > < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k < / c o d e >   i s   1 . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > ( i n i t i a l i z e r _ l i s t & l t ; v a l u e _ t y p e & g t ;   < v a r > i l < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > < v a r > i l < / v a r > . s i z e ( )   = =   R a n k < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   i n i t i a l i z e s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   w i t h   < c o d e > * ( < v a r > i l < / v a r > . b e g i n ( )   +   < v a r > i < / v a r > ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . o f f s e t . e q " > 2 0 . 6 . 2 . 3   E q u a l i t y   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . e q ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     < / i n s > c o n s t e x p r   b o o l   o p e r a t o r = = ( < i n s   c l a s s = " n 4 3 4 6 " > c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   < / i n s > c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t & l t ; R a n k & g t ; < / i n s > &   < v a r > r h s < / v a r > ) < d e l   c l a s s = " n 4 3 4 6 " >   c o n s t < / d e l >   n o e x c e p t ; < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > t r u e < / c o d e >   i f   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > ( * t h i s ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < v a r > l h s < / v a r > < / i n s > [ < v a r > i < / v a r > ]   = =   < v a r > r h s < / v a r > [ < v a r > i < / v a r > ] < / c o d e >   f o r   a l l   < c o d e > < v a r > i < / v a r > < / c o d e >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   o t h e r w i s e   < c o d e > f a l s e < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     < / i n s > c o n s t e x p r   b o o l   o p e r a t o r ! = ( < i n s   c l a s s = " n 4 3 4 6 " > c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   < / i n s > c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t & l t ; R a n k & g t ; < / i n s > &   < v a r > r h s < / v a r > ) < d e l   c l a s s = " n 4 3 4 6 " >   c o n s t < / d e l >   n o e x c e p t ; < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > ! ( < d e l   c l a s s = " n 4 3 4 6 " > * t h i s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < v a r > l h s < / v a r > < / i n s >   = =   < v a r > r h s < / v a r > ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . o f f s e t . c m p t " > 2 0 . 6 . 2 . 4   < d e l   c l a s s = " n 4 3 4 6 " > C o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > E l e m e n t < / i n s >   a c c e s s   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . c m p t ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   r e f e r e n c e   o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > ) ; < / c o d e > < b r > 
 
 < c o d e > c o n s t e x p r   c o n s t _ r e f e r e n c e   o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > < v a r > n < / v a r >   <   R a n k < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   r e f e r e n c e   t o   t h e   < c o d e > < v a r > n < / v a r > < / c o d e > < s u p > t h < / s u p >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . o f f s e t . a r i t h " > 2 0 . 6 . 2 . 5   A r i t h m e t i c   [ c o o r d . < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > . a r i t h ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   i n d e x   o p e r a t o r + ( c o n s t   i n d e x &   < v a r > r h s < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > i n d e x & l t ; R a n k & g t ; { * t h i s }   + =   < v a r > r h s < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   i n d e x   o p e r a t o r - ( c o n s t   i n d e x &   < v a r > r h s < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > i n d e x & l t ; R a n k & g t ; { * t h i s }   - =   < v a r > r h s < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r + = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   < v a r > r h s < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   a d d s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > < v a r > r h s < / v a r > < / c o d e >   t o   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   a n d   s t o r e s   t h e   s u m   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r - = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   < v a r > r h s < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   s u b t r a c t s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > < v a r > r h s < / v a r > < / c o d e >   f r o m   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   a n d   s t o r e s   t h e   d i f f e r e n c e   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r + + ( ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 < c o d e > + + ( * t h i s ) [ 0 ] < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k   = =   1 < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   o p e r a t o r + + ( i n t ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; { ( * t h i s ) [ 0 ] + + } < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k   = =   1 < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r - - ( ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 < c o d e > - - ( * t h i s ) [ 0 ] < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k   = =   1 < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   o p e r a t o r - - ( i n t ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; { ( * t h i s ) [ 0 ] - - } < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k   = =   1 < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   o p e r a t o r + ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s >   o p e r a t o r - ( )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   c o p y   o f   < c o d e > * t h i s < / c o d e >   w i t h   e a c h   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   n e g a t e d . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   i n d e x   o p e r a t o r * ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; < / c o d e > 
 
 < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > i n d e x & l t ; R a n k & g t ; { * t h i s }   * =   < v a r > v < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   i n d e x   o p e r a t o r / ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > i n d e x & l t ; R a n k & g t ; { * t h i s }   / =   < v a r > v < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r * = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   m u l t i p l i e s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   b y   < c o d e > < v a r > v < / v a r > < / c o d e >   a n d   s t o r e s   t h e   p r o d u c t   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > &   o p e r a t o r / = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   d i v i d e s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   b y   < c o d e > < v a r > v < / v a r > < / c o d e >   a n d   s t o r e s   t h e   q u o t i e n t   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r + ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > o f f s e t & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   + =   < v a r > r h s < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r - ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > o f f s e t & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   - =   < v a r > r h s < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r * ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > o f f s e t & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   * =   < v a r > v < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
     c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ;   o p e r a t o r * ( p t r d i f f _ t   < v a r > v < / v a r > ,   c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; { < v a r > r h s < / v a r > }   * =   < v a r > v < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   o f f s e t & l t ; R a n k & g t ;   o p e r a t o r / ( c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > o f f s e t & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   / =   < v a r > v < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s " > 2 0 . 6 . 3   C l a s s   t e m p l a t e   < c o d e > b o u n d s < / c o d e >   [ c o o r d . b o u n d s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p r e > < c o d e > 
 
 n a m e s p a c e   s t d   { 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
     c l a s s   b o u n d s   { 
 
     p u b l i c : 
 
         / /   c o n s t a n t s   a n d   t y p e s 
 
         s t a t i c   c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   r a n k   =   R a n k ; 
 
         u s i n g   r e f e r e n c e                       =   p t r d i f f _ t & ; 
 
         u s i n g   c o n s t _ r e f e r e n c e           =   c o n s t   p t r d i f f _ t & ; 
 
         u s i n g   i t e r a t o r                         =   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; ; 
 
         u s i n g   c o n s t _ i t e r a t o r             =   b o u n d s _ i t e r a t o r & l t ; R a n k & g t ; ; 
 
         u s i n g   s i z e _ t y p e                       =   s i z e _ t ; 
 
         u s i n g   v a l u e _ t y p e                     =   p t r d i f f _ t ; 
 
 
 
         / /   [ c o o r d . b o u n d s . c n s t r ] ,   b o u n d s   c o n s t r u c t i o n 
 
         c o n s t e x p r   b o u n d s ( )   n o e x c e p t ; 
 
         c o n s t e x p r   b o u n d s ( v a l u e _ t y p e   < v a r > v < / v a r > ) ;                                         / /   o n l y   i f   R a n k   = =   1 
 
         c o n s t e x p r   b o u n d s ( i n i t i a l i z e r _ l i s t & l t ; v a l u e _ t y p e & g t ;   < v a r > i l < / v a r > ) ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > / /   [ c o o r d . b o u n d s . e q ] ,   b o u n d s   e q u a l i t y 
 
         c o n s t e x p r   b o o l   o p e r a t o r = = ( c o n s t   b o u n d s &   < v a r > r h s < / v a r > )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   b o o l   o p e r a t o r ! = ( c o n s t   b o u n d s &   < v a r > r h s < / v a r > )   c o n s t   n o e x c e p t ; < / d e l > 
 
 
 
         / /   [ c o o r d . b o u n d s . o b s ] ,   b o u n d s   o b s e r v e r s 
 
         c o n s t e x p r   s i z e _ t y p e   s i z e ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   b o o l             c o n t a i n s ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > i d x < / v a r > )   c o n s t   n o e x c e p t ; 
 
 
 
         / /   [ c o o r d . b o u n d s . i t e r ] ,   b o u n d s   i t e r a t o r s 
 
         c o n s t _ i t e r a t o r   b e g i n ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t _ i t e r a t o r   e n d ( )   c o n s t   n o e x c e p t ; 
 
 
 
         / /   [ c o o r d . b o u n d s . c m p t ] ,   b o u n d s   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   a c c e s s 
 
         c o n s t e x p r   r e f e r e n c e               o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > ) ; 
 
         c o n s t e x p r   c o n s t _ r e f e r e n c e   o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > )   c o n s t ; 
 
 
 
         / /   [ c o o r d . b o u n d s . a r i t h ] ,   b o u n d s   a r i t h m e t i c 
 
         < d e l   c l a s s = " n 4 3 4 6 " > c o n s t e x p r   b o u n d s     o p e r a t o r + ( c o n s t   i n d e x & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         c o n s t e x p r   b o u n d s     o p e r a t o r - ( c o n s t   i n d e x & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   c o n s t ; < / d e l > 
 
         c o n s t e x p r   b o u n d s &   o p e r a t o r + = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
         c o n s t e x p r   b o u n d s &   o p e r a t o r - = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > c o n s t e x p r   b o u n d s     o p e r a t o r * ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; 
 
         c o n s t e x p r   b o u n d s     o p e r a t o r / ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; < / d e l > 
 
         c o n s t e x p r   b o u n d s &   o p e r a t o r * = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; 
 
         c o n s t e x p r   b o u n d s &   o p e r a t o r / = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; 
 
     } ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . r e q u i r e " > 2 0 . 6 . 3 . 1   G e n e r a l   r e q u i r e m e n t s   [ c o o r d . b o u n d s . r e q u i r e ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 I f   < c o d e > R a n k < / c o d e >   i s   l e s s   t h a n   1   t h e   p r o g r a m   i s   i l l - f o r m e d . 
 
 < / p > 
 
 
 
 < p > 
 
 C o n s t r u c t i o n   o f   a n d   e v e r y   m u t a t i n g   o p e r a t i o n   o n   a n   o b j e c t   < c o d e > < v a r > b < / v a r > < / c o d e >   o f   t y p e   < c o d e > b o u n d s < / c o d e >   s h a l l   l e a v e   t h e   o b j e c t   i n   a   s t a t e   t h a t   s a t i s f i e s   t h e   f o l l o w i n g   c o n s t r a i n t s : 
 
 < o l > 
 
 < l i > < c o d e > < v a r > b < / v a r > [ < v a r > i < / v a r > ]   & g t ; =   0 < / c o d e >   f o r   a l l   < c o d e > < v a r > i < / v a r > < / c o d e >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > . < / l i > 
 
 < l i > < d e l   c l a s s = " n 4 3 4 6 " > T h e   p r o d u c t   o f   < c o d e > < v a r > b < / v a r > [ < v a r > i < / v a r > ] < / c o d e >   f o r   a l l   < c o d e > < v a r > i < / v a r > < / c o d e >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e >   i s   l e s s   t h a n   o r   e q u a l   t o < / d e l > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > b < / v a r > [ 0 ] < / c o d e >      < c o d e > < v a r > b < / v a r > [ 1 ] < / c o d e >      . . .      < c o d e > < v a r > b < / v a r > [ R a n k   -   1 ]   & l t ; = < / c o d e > < / i n s >   < c o d e > n u m e r i c _ l i m i t s & l t ; p t r d i f f _ t & g t ; : : m a x ( ) < / c o d e > . < / l i > 
 
 < / o l > 
 
 < p > 
 
 O t h e r w i s e ,   t h e   b e h a v i o r   i s   u n d e f i n e d . 
 
 < / p > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . c n s t r " > 2 0 . 6 . 3 . 2   C o n s t r u c t i o n   [ c o o r d . b o u n d s . c n s t r ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s ( )   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 Z e r o - i n i t i a l i z e s   e a c h   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 I n i t i a l i z e s   t h e   0 < s u p > t h < / s u p >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   w i t h   < c o d e > < v a r > v < / v a r > < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k < / c o d e >   i s   1 . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s ( i n i t i a l i z e r _ l i s t & l t ; v a l u e _ t y p e & g t ;   < v a r > i l < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > < v a r > i l < / v a r > . s i z e ( )   = =   R a n k < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   i n i t i a l i z e s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   w i t h   < c o d e > * ( < v a r > i l < / v a r > . b e g i n ( )   +   < v a r > i < / v a r > ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . e q " > 2 0 . 6 . 3 . 3   E q u a l i t y   [ c o o r d . b o u n d s . e q ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     < / i n s > c o n s t e x p r   b o o l   o p e r a t o r = = ( < i n s   c l a s s = " n 4 3 4 6 " > c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   < / i n s > c o n s t   b o u n d s < i n s   c l a s s = " n 4 3 4 6 " > & l t ; R a n k & g t ; < / i n s > &   < v a r > r h s < / v a r > ) < d e l   c l a s s = " n 4 3 4 6 " >   c o n s t < / d e l >   n o e x c e p t ; < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > t r u e < / c o d e >   i f   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > ( * t h i s ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < v a r > l h s < / v a r > < / i n s > [ < v a r > i < / v a r > ]   = =   < v a r > r h s < / v a r > [ < v a r > i < / v a r > ] < / c o d e >   f o r   a l l   < c o d e > < v a r > i < / v a r > < / c o d e >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   o t h e r w i s e   < c o d e > f a l s e < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     < / i n s > c o n s t e x p r   b o o l   o p e r a t o r ! = ( < i n s   c l a s s = " n 4 3 4 6 " > c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   < / i n s > c o n s t   b o u n d s < i n s   c l a s s = " n 4 3 4 6 " > & l t ; R a n k & g t ; < / i n s > &   < v a r > r h s < / v a r > ) < d e l   c l a s s = " n 4 3 4 6 " >   c o n s t < / d e l >   n o e x c e p t ; < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > ! ( < d e l   c l a s s = " n 4 3 4 6 " > * t h i s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < v a r > l h s < / v a r > < / i n s >   = =   < v a r > r h s < / v a r > ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . o b s " > 2 0 . 6 . 3 . 4   O b s e r v e r s   [ c o o r d . b o u n d s . o b s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   s i z e _ t y p e   s i z e ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 T h e   p r o d u c t   o f   a l l   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t s < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o o l   c o n t a i n s ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > i d x < / v a r > )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > t r u e < / c o d e >   i f   < c o d e > 0   < =   < v a r > i d x < / v a r > [ < v a r > i < / v a r > ] < / c o d e >   a n d   < c o d e > < v a r > i d x < / v a r > [ < v a r > i < / v a r > ]   & l t ;   ( * t h i s ) [ < v a r > i < / v a r > ] < / c o d e >   f o r   a l l   < c o d e > < v a r > i < / v a r > < / c o d e >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   o t h e r w i s e   < c o d e > f a l s e < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . i t e r " > 2 0 . 6 . 3 . 5   I t e r a t o r s   [ c o o r d . b o u n d s . i t e r ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > b o u n d s _ i t e r a t o r & l t ; R a n k & g t ;   b e g i n ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   r e f e r r i n g   t o   t h e   f i r s t   e l e m e n t   o f   t h e   s p a c e   d e f i n e d   b y   < c o d e > * t h i s < / c o d e >   s u c h   t h a t   < c o d e > * b e g i n ( )   = =   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; { } < / c o d e >   i f   < c o d e > s i z e ( )   ! =   0 < / c o d e > ,   < c o d e > b e g i n ( )   = =   e n d ( ) < / c o d e >   o t h e r w i s e . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > b o u n d s _ i t e r a t o r & l t ; R a n k & g t ;   e n d ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   w h i c h   i s   t h e   p a s t - t h e - e n d   i t e r a t o r   f o r   t h e   s p a c e   d e f i n e d   b y   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . c m p t " > 2 0 . 6 . 3 . 6   < d e l   c l a s s = " n 4 3 4 6 " > C o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > E l e m e n t < / i n s >   a c c e s s   [ c o o r d . b o u n d s . c m p t ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   r e f e r e n c e   o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > ) ; < / c o d e > < b r > 
 
 < c o d e > c o n s t e x p r   c o n s t _ r e f e r e n c e   o p e r a t o r [ ] ( s i z e _ t y p e   < v a r > n < / v a r > )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > < v a r > n < / v a r >   <   R a n k < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   r e f e r e n c e   t o   t h e   < c o d e > < v a r > n < / v a r > < / c o d e > < s u p > t h < / s u p >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . a r i t h " > 2 0 . 6 . 3 . 7   A r i t h m e t i c   [ c o o r d . b o u n d s . a r i t h ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   b o u n d s   o p e r a t o r + ( c o n s t   i n d e x & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { * t h i s }   + =   < v a r > r h s < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   b o u n d s   o p e r a t o r - ( c o n s t   i n d e x & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { * t h i s }   - =   < v a r > r h s < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s &   o p e r a t o r + = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   a d d s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > < v a r > r h s < / v a r > < / c o d e >   t o   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   a n d   s t o r e s   t h e   s u m   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s &   o p e r a t o r - = ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   s u b t r a c t s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > < v a r > r h s < / v a r > < / c o d e >   f r o m   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   a n d   s t o r e s   t h e   d i f f e r e n c e   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   b o u n d s   o p e r a t o r * ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { * t h i s }   * =   < v a r > v < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > c o n s t e x p r   b o u n d s   o p e r a t o r / ( v a l u e _ t y p e   < v a r > v < / v a r > )   c o n s t ; < / c o d e > < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { * t h i s }   / =   < v a r > v < / v a r > < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s &   o p e r a t o r * = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   m u l t i p l i e s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   b y   < c o d e > < v a r > v < / v a r > < / c o d e >   a n d   s t o r e s   t h e   p r o d u c t   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s &   o p e r a t o r / = ( v a l u e _ t y p e   < v a r > v < / v a r > ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 F o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   d i v i d e s   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e >   b y   < c o d e > < v a r > v < / v a r > < / c o d e >   a n d   s t o r e s   t h e   q u o t i e n t   i n   t h e   < v a r > i < s u p > t h < / s u p > < / v a r >   < d e l   c l a s s = " n 4 3 4 6 " > c o m p o n e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > e l e m e n t < / i n s >   o f   < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r + ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   + =   < v a r > r h s < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
     c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r + ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { < v a r > r h s < / v a r > }   + =   < v a r > l h s < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r - ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   c o n s t   o f f s e t & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   - =   < v a r > r h s < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r * ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   * =   < v a r > v < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
     c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r * ( p t r d i f f _ t   < v a r > v < / v a r > ,   c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > r h s < / v a r > ) ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { < v a r > r h s < / v a r > }   * =   < v a r > v < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < i n s   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; s i z e _ t   R a n k & g t ; 
 
     c o n s t e x p r   b o u n d s & l t ; R a n k & g t ;   o p e r a t o r / ( c o n s t   b o u n d s & l t ; R a n k & g t ; &   < v a r > l h s < / v a r > ,   p t r d i f f _ t   < v a r > v < / v a r > ) ; < / i n s > < / c o d e > < / p r e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s & l t ; R a n k & g t ; { < v a r > l h s < / v a r > }   / =   < v a r > v < / v a r > < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . i t e r a t o r " > 2 0 . 6 . 4   C l a s s   t e m p l a t e   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   [ c o o r d . b o u n d s . i t e r a t o r ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   s a t i s f i e s   t h e   r e q u i r e m e n t s   o f   a   r a n d o m   a c c e s s   i t e r a t o r < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > S e m a n t i n c s   o f   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   s h a l l   f o l l o w   t h e   s e m a n t i c s   o f   a   r a n d o m   a c c e s s   i t e r a t o r   ( [ r a n d o m . a c c e s s . i t e r a t o r s ] ) < / i n s >   u n l e s s   o t h e r w i s e   s p e c i f i e d   b e l o w . 
 
 < / p > 
 
 
 
 < p r e > < c o d e > 
 
 n a m e s p a c e   s t d   { 
 
     t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k & g t ; 
 
     c l a s s   b o u n d s _ i t e r a t o r 
 
     { 
 
     p u b l i c : 
 
         u s i n g   i t e r a t o r _ c a t e g o r y   =   < d e l   c l a s s = " n 4 3 4 6 " > r a n d o m _ a c c e s s _ i t e r a t o r _ t a g ; < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < e m > u n s p e c i f i e d < / e m > ; < / i n s > 
 
         u s i n g   v a l u e _ t y p e                 =   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; ; 
 
         u s i n g   d i f f e r e n c e _ t y p e       =   p t r d i f f _ t ; 
 
         u s i n g   p o i n t e r                       =   < e m > u n s p e c i f i e d < / e m > ;       / /   S e e   [ c o o r d . b o u n d s . i t e r a t o r . r e q u i r e ] 
 
         u s i n g   r e f e r e n c e                   =   c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > b o o l   o p e r a t o r = = ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         b o o l   o p e r a t o r ! = ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         b o o l   o p e r a t o r & l t ; ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         b o o l   o p e r a t o r & l t ; = ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         b o o l   o p e r a t o r > ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; 
 
         b o o l   o p e r a t o r > = ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; < / d e l > 
 
 
 
         b o u n d s _ i t e r a t o r &   o p e r a t o r + + ( ) ; 
 
         b o u n d s _ i t e r a t o r     o p e r a t o r + + ( i n t ) ; 
 
         b o u n d s _ i t e r a t o r &   o p e r a t o r - - ( ) ; 
 
         b o u n d s _ i t e r a t o r     o p e r a t o r - - ( i n t ) ; 
 
 
 
         b o u n d s _ i t e r a t o r     o p e r a t o r + ( d i f f e r e n c e _ t y p e   < v a r > n < / v a r > )   c o n s t ; 
 
         b o u n d s _ i t e r a t o r &   o p e r a t o r + = ( d i f f e r e n c e _ t y p e   < v a r > n < / v a r > ) ; 
 
         b o u n d s _ i t e r a t o r     o p e r a t o r - ( d i f f e r e n c e _ t y p e   < v a r > n < / v a r > )   c o n s t ; 
 
         b o u n d s _ i t e r a t o r &   o p e r a t o r - = ( d i f f e r e n c e _ t y p e   < v a r > n < / v a r > ) ; 
 
 
 
         d i f f e r e n c e _ t y p e     o p e r a t o r - ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; 
 
 
 
         r e f e r e n c e   o p e r a t o r * ( )   c o n s t ; 
 
         p o i n t e r       o p e r a t o r - > ( )   c o n s t ; 
 
         r e f e r e n c e   o p e r a t o r [ ] ( d i f f e r e n c e _ t y p e   < v a r > n < / v a r > )   c o n s t ; 
 
 
 
     p r i v a t e : 
 
         b o u n d s & l t ; R a n k & g t ;   b n d _ ;     / /   e x p o s i t i o n   o n l y 
 
         < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ;     i d x _ ;     / /   e x p o s i t i o n   o n l y 
 
     } ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . i t e r a t o r . r e q u i r e " > 2 0 . 6 . 4 . 1   G e n e r a l   r e q u i r e m e n t s   [ c o o r d . b o u n d s . i t e r a t o r . r e q u i r e ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 I f   < c o d e > R a n k < / c o d e >   i s   l e s s   t h a n   1   t h e   p r o g r a m   i s   i l l - f o r m e d . 
 
 < / p > 
 
 
 
 < p > 
 
 < c o d e > p o i n t e r < / c o d e >   s h a l l   b e   a n   u n s p e c i f i e d   t y p e   s u c h   t h a t   f o r   a   < c o d e > b o u n d s _ i t e r a t o r   < v a r > i t < / v a r > < / c o d e >   t h e   e x p r e s s i o n   < c o d e > < v a r > i t < / v a r > - > E < / c o d e >   i s   e q u i v a l e n t   t o   < c o d e > ( * < v a r > i t < / v a r > ) . E < / c o d e >   a n d   t h a t   f o r   a n   o b j e c t   < c o d e > < v a r > p < / v a r > < / c o d e >   o f   t y p e   < c o d e > p o i n t e r < / c o d e >   t h e   e x p r e s s i o n   < c o d e > < v a r > p < / v a r > - > E < / c o d e >   y i e l d s   t h e   s a m e   r e s u l t   i r r e s p e c t i v e   o f   w h e t h e r   t h e   s t a t e   o f   t h e   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   o b j e c t   h a s   c h a n g e d   o r   i t s   l i f e t i m e   h a s   e n d e d . 
 
 < / p > 
 
 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > [ N o t e : < / i > 
 
 A l l   f u n c t i o n s   i n   t h e   l i b r a r y   t h a t   t a k e   a   p a i r   o f   i t e r a t o r s   t o   d e n o t e   a   r a n g e   s h a l l   t r e a t   < c o d e > b o u n d s _ i t e r a t o r < / c o d e >   i t e r a t o r s   a s - i f   t h e y   w e r e   r a n d o m   a c c e s s   i t e r a t o r s ,   e v e n   t h o u g h   t h e   p o i n t e r   t y p e   i s   n o t   a   t r u e   p o i n t e r   a n d   t h e   r e f e r e n c e   t y p e   i s   n o t   a   t r u e   r e f e r e n c e . 
 
 & m d a s h ; < i > e n d   n o t e < / i > ] < / i n s > 
 
 < / p > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o o r d . b o u n d s . i t e r a t o r . f u n c " > 2 0 . 6 . 4 . 2   F u n c t i o n s   [ c o o r d . b o u n d s . i t e r a t o r . f u n c ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < c o d e > b o o l   o p e r a t o r = = ( c o n s t   b o u n d s _ i t e r a t o r &   < v a r > r h s < / v a r > )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > * t h i s < / c o d e >   a n d   < c o d e > < v a r > r h s < / v a r > < / c o d e >   a r e   i t e r a t o r s   o v e r   t h e   s a m e   < c o d e > b o u n d s < / c o d e >   o b j e c t . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > i d x _   = =   < v a r > r h s < / v a r > . i d x _ < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > b o u n d s _ i t e r a t o r &   o p e r a t o r + + ( ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > * t h i s < / c o d e >   i s   n o t   t h e   p a s t - t h e - e n d   i t e r a t o r . 
 
 < / p > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > E q u i v a l e n t   t o : < / d e l > 
 
 < b l o c k q u o t e > < p r e > < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > 
 
 f o r   ( a u t o   i   =   R a n k   -   1 ;   i   > =   0 ;   - - i )   { 
 
     i f   ( + + i d x _ [ i ]   & l t ;   b n d _ [ i ] ) 
 
         r e t u r n ; 
 
     i d x _ [ i ]   =   0 ; 
 
 } 
 
 i d x _   =   < e m > u n s p e c i f i e d   p a s t - t h e - e n d   v a l u e < / e m > ; 
 
 < / d e l > < / c o d e > < / p r e > < / b l o c k q u o t e > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > I n c r e m e n t s   < c o d e > < v a r > i d x _ < / v a r > [ R a n k   -   1 ] < / c o d e > .   I f   < c o d e > < v a r > i d x _ < / v a r > [ R a n k   -   1 ] < / c o d e >   i s   e q u a l   t o   < c o d e > < v a r > b n d _ < / v a r > [ R a n k   -   1 ] < / c o d e > ,   
 
 s e t s   < c o d e > < v a r > i d x _ < / v a r > [ R a n k   -   1 ] < / c o d e >   t o   z e r o   a n d   r e p e a t s   t h e   p r o c e s s   w i t h   < c o d e > R a n k   -   2 < / c o d e > ,   a n d   s o   o n ,   u n t i l   < c o d e > < v a r > i d x _ < / v a r > [ 0 ] < / c o d e >   i s   e q u a l   t o   < c o d e > < v a r > b n d _ < / v a r > [ 0 ] < / c o d e > ,   a t   w h i c h   p o i n t s   s e t s   < c o d e > i d x _ < / c o d e >   t o   a n   u n s p e c i f i e d   p a s t - t h e - e n d   v a l u e . < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < i > [ E x a m p l e : < / i > 
 
 G i v e n   < c o d e > b o u n d s _ i t e r a t o r & l t ; 2 & g t ; < / c o d e >   w i t h   < c o d e > < v a r > b n d _ < / v a r >   = =   { 3 ,   2 } < / c o d e >   a n d   < c o d e > < v a r > i d x _ < / v a r >   = =   { 0 ,   0 } < / c o d e > ,   s u b s e q u e n t   c a l l s   t o   < c o d e > o p e r a t o r + + < / c o d e >   w i l l   r e s u l t   i n   < c o d e > < v a r > i d x _ < / v a r > < / c o d e >   b e i n g   e q u a l   t o :   < c o d e > { 0 ,   1 } < / c o d e > ,   < c o d e > { 1 ,   0 } < / c o d e > ,   < c o d e > { 1 ,   1 } < / c o d e > ,   < c o d e > { 2 ,   0 } < / c o d e > ,   < c o d e > { 2 ,   1 } < / c o d e > ,   < e m > u n s p e c i f i e d   p a s t - t h e - e n d   v a l u e < / e m > . 
 
 & m d a s h ; < i > e n d   e x a m p l e < / i > ] < / i n s > 
 
 < / p > 
 
 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > [ N o t e : < / i > 
 
 T h e   e f f e c t i v e   i t e r a t i o n   o r d e r   i s   c o n g r u e n t   w i t h   i t e r a t i n g   o v e r   a   m u l t i d i m e n s i o n a l   a r r a y   s t a r t i n g   w i t h   t h e   l e a s t   s i g n i f i c a n t   d i m e n s i o n . 
 
 & m d a s h ; < i > e n d   n o t e < / i > ] < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > b o u n d s _ i t e r a t o r &   o p e r a t o r - - ( ) ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 T h e r e   e x i s t s   a   < c o d e > b o u n d s _ i t e r a t o r & l t ; R a n k & g t ;   < v a r > i t < / v a r > < / c o d e >   s u c h   t h a t   < c o d e > * t h i s   = =   + + < v a r > i t < / v a r > < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > E f f e c t s : < / i > 
 
 < c o d e > * t h i s   =   < v a r > i t < / v a r > < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > r e f e r e n c e   o p e r a t o r * ( )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > i d x _ < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " c o n t a i n e r s " > C h a p t e r   2 3   C o n t a i n e r s   l i b r a r y   [ c o n t a i n e r s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 E d i t   w i t h i n   p a r a g r a p h   2   a s   f o l l o w s . 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d " > 
 
 < p > 
 
 T h e   f o l l o w i n g   s u b c l a u s e s   d e s c r i b e   c o n t a i n e r   r e q u i r e m e n t s , < d e l >   a n d < / d e l >   c o m p o n e n t s   f o r   s e q u e n c e   c o n t a i n e r s   a n d   a s s o c i a t i v e   c o n t a i n e r s , < i n s >   a n d   v i e w s , < / i n s >   a s   s u m m a r i z e d   i n   T a b l e   9 5 . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 A d d   a   r o w   t o   t a b l e   9 5   a s   f o l l o w s . 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d " > 
 
 < t a b l e > 
 
 < c a p t i o n > T a b l e   9 5 :   C o n t a i n e r s   l i b r a r y   s u m m a r y < / c a p t i o n > 
 
 < t b o d y > 
 
 < t r > < t h > S u b c l a u s e < / t h > < t h > H e a d e r ( s ) < / t h > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 3 . 2   R e q u i r e m e n t s < / t d > 
 
 < t d > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 3 . 3   S e q u e n c e   c o n t a i n e r s < / t d > 
 
 < t d > < c o d e > & l t ; a r r a y & g t ; < b r > 
 
 & l t ; d e q u e & g t ; < b r > 
 
 & l t ; f o r w a r d _ l i s t & g t ; < b r > 
 
 & l t ; l i s t & g t ; < b r > 
 
 & l t ; v e c t o r & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 3 . 4   A s s o c i a t i v e   c o n t a i n e r s < / t d > 
 
 < t d > < c o d e > & l t ; m a p & g t ; < b r > 
 
 & l t ; s e t & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 3 . 5   U n o r d e r e d   a s s o c i a t i v e   c o n t a i n e r s < / t d > 
 
 < t d > < c o d e > & l t ; u n o r d e r e d _ m a p & g t ; < b r > 
 
 & l t ; u n o r d e r e d _ s e t & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > 2 3 . 6   C o n t a i n e r   a d a p t o r s < / t d > 
 
 < t d > < c o d e > & l t ; q u e u e & g t ; < b r > 
 
 & l t ; s t a c k & g t ; < / c o d e > < / t d > < / t r > 
 
 < t r > < t d   v a l i g n = t o p > < i n s > 2 3 . 7   V i e w s < / i n s > < / t d > 
 
 < t d > < i n s > < c o d e > & l t ; a r r a y _ v i e w & g t ; < / c o d e > < / i n s > < / t d > < / t r > 
 
 < / t b o d y > 
 
 < / t a b l e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " v i e w s " > 2 3 . 7   V i e w s   [ v i e w s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n   a f t e r   t h e   < c o d e > c o n t a i n e r . a d a p t o r s < / c o d e >   s e c t i o n . 
 
 < / p > 
 
 
 
 
 
 < h 3 > < a   n a m e = " v i e w s . g e n e r a l " > 2 3 . 7 . 1   I n   g e n e r a l   [ v i e w s . g e n e r a l ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 T h e   h e a d e r   < c o d e > & l t ; a r r a y _ v i e w & g t ; < / c o d e >   d e f i n e s   t h e   < e m > v i e w s < / e m >   < c o d e > a r r a y _ v i e w < / c o d e >   a n d   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 T h e   o b j e c t s   i n   a n y   v a l i d   r a n g e   [ < v a r > p t r < / v a r > ,   < v a r > p t r < / v a r >   +   < v a r > s i z e < / v a r > )   a r e   < e m > u n i f o r m l y   s t r i d e d < / e m >   f o r   a   s p e c i f i c   < v a r > N < / v a r > - d i m e n s i o n a l   l o g i c a l   r e p r e s e n t a t i o n   < v a r > V < / v a r >   p a r a m e t e r i z e d   b y   a n   < v a r > N < / v a r > - d i m e n s i o n a l   v e c t o r   < v a r > s t r i d e < / v a r >   i f   f o r   e v e r y   e l e m e n t   i n   < v a r > V < / v a r >   t h e   m a p p i n g   b e t w e e n   t h e   l o c a t i o n   i n   < v a r > V < / v a r >   e x p r e s s e d   a s   a n   < v a r > N < / v a r > - d i m e n s i o n a l   v e c t o r   < v a r > i d x < / v a r >   a n d   t h e   a d d r e s s   o f   t h e   c o r r e s p o n d i n g   o b j e c t   i n   [ < v a r > p t r < / v a r > ,   < v a r > p t r < / v a r >   +   < v a r > s i z e < / v a r > )   c a n   b e   c o m p u t e d   a s :   < i n s   c l a s s = " n 4 3 4 6 " > < v a r > p t r < / v a r >   +   < v a r > i d x < / v a r >   & m i d d o t ;   < v a r > s t r i d e < / v a r > < / i n s > < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > p t r < / v a r >   +   < v a r > i d x < / v a r >   *   < v a r > s t r i d e < / v a r > < / c o d e > < / d e l > . 
 
 < / p > 
 
 < p > 
 
 A n   < c o d e > a r r a y _ v i e w < / c o d e >   i s   a   p o t e n t i a l l y   m u l t i d i m e n s i o n a l   v i e w   o n   a   s e q u e n c e   o f   u n i f o r m l y   s t r i d e d   o b j e c t s   o f   a   u n i f o r m   t y p e ,   c o n t i g u o u s   i n   t h e   l e a s t   s i g n i f i c a n t   d i m e n s i o n . 
 
 < / p > 
 
 < p > 
 
 A   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   i s   a   p o t e n t i a l l y   m u l t i d i m e n s i o n a l   v i e w   o n   a   s e q u e n c e   o f   u n i f o r m l y   s t r i d e d   o b j e c t s   o f   a   u n i f o r m   t y p e . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 A d d   a   n e w   s y n o p s i s : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < b > H e a d e r   < c o d e > & l t ; a r r a y _ v i e w & g t ; < / c o d e >   s y n o p s i s < / b > 
 
 < / p > 
 
 
 
 < p r e > < c o d e > 
 
 n a m e s p a c e   s t d   { 
 
     / /   [ a r r a y v i e w ] ,   c l a s s   t e m p l a t e   a r r a y _ v i e w 
 
     t e m p l a t e   & l t ; c l a s s   T ,   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k   =   1 & g t ;   c l a s s   a r r a y _ v i e w ; 
 
 
 
     / /   [ s t r i d e d a r r a y v i e w ] ,   c l a s s   t e m p l a t e   s t r i d e d _ a r r a y _ v i e w 
 
     t e m p l a t e   & l t ; c l a s s   T ,   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k   =   1 & g t ;   c l a s s   s t r i d e d _ a r r a y _ v i e w ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " v i e w s . r e q u i r e " > < d e l   c l a s s = " n 4 3 4 6 " > 2 3 . 7 . 2   V i e w   t y p e s   r e q u i r e m e n t s   [ v i e w s . r e q u i r e ] < / d e l > < / a > < / h 3 > 
 
 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > A d d   a   n e w   s e c t i o n : < / d e l > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > T < / c o d e >   s h a l l   b e   a n   o b j e c t   t y p e .   < i > [ N o t e : < / i >   T h e   t y p e   c a n   b e   c v - q u a l i f i e d ,   r e s u l t i n g   i n   s e m a n t i c s   s i m i l a r   t o   t h e   s e m a n t i c s   o f   a   p o i n t e r   t o   c v - q u a l i f i e d   t y p e .   & m d a s h ; < i > e n d   n o t e < / i > ] < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > I f   < c o d e > R a n k < / c o d e >   i s   l e s s   t h a n   1   t h e   p r o g r a m   i s   i l l - f o r m e d . < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > A n y   o p e r a t i o n   t h a t   i n v a l i d a t e s   a   p o i n t e r   i n   t h e   r a n g e   o n   w h i c h   a   v i e w   w a s   c r e a t e d   i n v a l i d a t e s   p o i n t e r s   a n d   r e f e r e n c e s   r e t u r n e d   f r o m   t h e   v i e w ' s   f u n c t i o n s . < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > D e f i n e   < c o d e > < i > V I E W _ A C C E S S < / i > ( d a t a ,   i d x ,   s t r i d e ,   r a n k ) < / c o d e >   a s   < c o d e > * ( d a t a   +   < v a r > o f f s e t < / v a r > ) < / c o d e >   w h e r e   [ < i > E d i t o r i a l   n o t e : < / i >   T h e   f o l l o w i n g   e x p r e s s i o n   s h o u l d   b e   f o r m a t t e d   a s   L a T e X   c o d e   & m d a s h ; < i > e n d   n o t e < / i > ]   < c o d e > o f f s e t   =   \ s u m _ { i = 0 } ^ { r a n k   -   1 }   i d x _ i   \ t i m e s   s t r i d e _ i < / c o d e > ,   < v a r > i d x < s u b > i < / s u b > < / v a r >   =   < c o d e > < v a r > i d x < / v a r > [ < / c o d e > < v a r > i < / v a r > < c o d e > ] < / c o d e > ,   a n d   < v a r > s t r i d e < s u b > i < / s u b > < / v a r >   =   < c o d e > s t r i d e [ < / c o d e > < v a r > i < / v a r > < c o d e > ] < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " a r r a y v i e w " > 2 3 . 7 . 2   C l a s s   t e m p l a t e   < c o d e > a r r a y _ v i e w < / c o d e >   [ a r r a y v i e w ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p r e > < c o d e > 
 
 n a m e s p a c e   s t d   { 
 
     t e m p l a t e   & l t ; c l a s s   T ,   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k   =   1 & g t ; 
 
     c l a s s   a r r a y _ v i e w   { 
 
     p u b l i c : 
 
         / /   c o n s t a n t s   a n d   t y p e s 
 
         s t a t i c   c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   r a n k   =   R a n k ; 
 
         u s i n g   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e                     =   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; ; 
 
         u s i n g   b o u n d s _ t y p e                   =   b o u n d s & l t ; R a n k & g t ; ; 
 
         u s i n g   s i z e _ t y p e                       =   s i z e _ t ; 
 
         u s i n g   v a l u e _ t y p e                     =   T ; 
 
         u s i n g   p o i n t e r                           =   T * ; 
 
         u s i n g   r e f e r e n c e                       =   T & ; 
 
 
 
         / /   [ a r r a y v i e w . c o n s ] ,   a r r a y _ v i e w   c o n s t r u c t o r s ,   c o p y ,   a n d   a s s i g n m e n t 
 
         c o n s t e x p r   a r r a y _ v i e w ( )   n o e x c e p t ; 
 
 
 
         t e m p l a t e   & l t ; c l a s s   V i e w a b l e & g t ; 
 
             c o n s t e x p r   a r r a y _ v i e w ( V i e w a b l e & &   < v a r > v w < / v a r > ) ;                                                             / /   o n l y   i f   R a n k   = =   1 
 
         t e m p l a t e   & l t ; c l a s s   U ,   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   A n y R a n k & g t ; 
 
             c o n s t e x p r   a r r a y _ v i e w ( c o n s t   a r r a y _ v i e w & l t ; U ,   A n y R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ;   / /   o n l y   i f   R a n k   = =   1 
 
         t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > c l a s s   A r r a y T y p e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t   E x t e n t < / i n s > & g t ; 
 
             c o n s t e x p r   a r r a y _ v i e w ( < d e l   c l a s s = " n 4 3 4 6 " > A r r a y T y p e & < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > v a l u e _ t y p e   ( & < / i n s > < v a r > a r r < / v a r > < i n s   c l a s s = " n 4 3 4 6 " > ) [ E x t e n t ] < / i n s > )   n o e x c e p t ;     / /   o n l y   i f   R a n k   = =   < d e l   c l a s s = " n 4 3 4 6 " > r a n k _ v & l t ; A r r a y T y p e & g t ; < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > 1 < / i n s > 
 
 
 
         t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
             c o n s t e x p r   a r r a y _ v i e w ( c o n s t   a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; 
 
 
 
         t e m p l a t e   & l t ; c l a s s   V i e w a b l e & g t ; 
 
             c o n s t e x p r   a r r a y _ v i e w ( V i e w a b l e & &   < v a r > v w < / v a r > ,   b o u n d s _ t y p e   < v a r > b o u n d s < / v a r > ) ; 
 
         c o n s t e x p r   a r r a y _ v i e w ( p o i n t e r   < v a r > p t r < / v a r > ,   b o u n d s _ t y p e   < v a r > b o u n d s < / v a r > ) ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
             c o n s t e x p r   a r r a y _ v i e w &   o p e r a t o r = ( c o n s t   a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / d e l > 
 
 
 
         / /   [ a r r a y v i e w . o b s ] ,   a r r a y _ v i e w   o b s e r v e r s 
 
         c o n s t e x p r   b o u n d s _ t y p e   b o u n d s ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   s i z e _ t y p e       s i z e ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e     s t r i d e ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   p o i n t e r           d a t a ( )   c o n s t   n o e x c e p t ; 
 
 
 
         / /   [ a r r a y v i e w . e l e m ] ,   a r r a y _ v i e w   e l e m e n t   a c c e s s 
 
         c o n s t e x p r   r e f e r e n c e   o p e r a t o r [ ] ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > i d x < / v a r > )   c o n s t ; 
 
 
 
         / /   [ a r r a y v i e w . s u b v i e w ] ,   a r r a y _ v i e w   s l i c i n g   a n d   s e c t i o n i n g 
 
         c o n s t e x p r   a r r a y _ v i e w & l t ; T ,   R a n k   -   1 & g t ; 
 
             o p e r a t o r [ ] ( p t r d i f f _ t   < v a r > s l i c e < / v a r > )   c o n s t ;             / /   o n l y   i f   R a n k   >   1 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
             s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > ,   c o n s t   b o u n d s _ t y p e &   < v a r > s e c t i o n _ b n d < / v a r > )   c o n s t ; 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
             s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > )   c o n s t ; 
 
 
 
     < i n s   c l a s s = " n 4 3 4 6 " > p r i v a t e : < / i n s > 
 
         < i n s   c l a s s = " n 4 3 4 6 " > p o i n t e r           d a t a _ ;         / /   e x p o s i t i o n   o n l y < / i n s > 
 
         < i n s   c l a s s = " n 4 3 4 6 " > b o u n d s _ t y p e   b o u n d s _ ;     / /   e x p o s i t i o n   o n l y < / i n s > 
 
     } ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " a r r a y v i e w . r e q u i r e " > < i n s   c l a s s = " n 4 3 4 6 " > 2 3 . 7 . 2 . 1   < c o d e > a r r a y _ v i e w < / c o d e >   r e q u i r e m e n t s   [ a r r a y v i e w . r e q u i r e ] < / i n s > < / a > < / h 3 > 
 
 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > A d d   a   n e w   s e c t i o n : < / i n s > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > T < / c o d e >   s h a l l   b e   a n   o b j e c t   t y p e .   < i > [ N o t e : < / i >   T h e   t y p e   c a n   b e   c v - q u a l i f i e d ,   r e s u l t i n g   i n   s e m a n t i c s   s i m i l a r   t o   t h e   s e m a n t i c s   o f   a   p o i n t e r   t o   c v - q u a l i f i e d   t y p e .   & m d a s h ; < i > e n d   n o t e < / i > ] < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > I f   < c o d e > R a n k < / c o d e >   i s   l e s s   t h a n   1   t h e   p r o g r a m   i s   i l l - f o r m e d . < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > A n y   o p e r a t i o n   t h a t   i n v a l i d a t e s   a   p o i n t e r   i n   t h e   r a n g e   o n   w h i c h   a   v i e w   w a s   c r e a t e d   i n v a l i d a t e s   p o i n t e r s   a n d   r e f e r e n c e s   r e t u r n e d   f r o m   t h e   v i e w ' s   f u n c t i o n s . < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > D e f i n e   < c o d e > < i > V I E W _ A C C E S S < / i > ( d a t a ,   i d x ,   s t r i d e ,   r a n k ) < / c o d e >   a s   < c o d e > * ( d a t a   +   < v a r > o f f s e t < / v a r > ) < / c o d e >   w h e r e   [ < i > E d i t o r i a l   n o t e : < / i >   T h e   f o l l o w i n g   e x p r e s s i o n   s h o u l d   b e   f o r m a t t e d   a s   L a T e X   c o d e   & m d a s h ; < i > e n d   n o t e < / i > ]   < c o d e > o f f s e t   =   \ s u m _ { i = 0 } ^ { r a n k   -   1 }   i d x _ i   \ t i m e s   s t r i d e _ i < / c o d e > ,   < v a r > i d x < s u b > i < / s u b > < / v a r >   =   < c o d e > < v a r > i d x < / v a r > [ < / c o d e > < v a r > i < / v a r > < c o d e > ] < / c o d e > ,   a n d   < v a r > s t r i d e < s u b > i < / s u b > < / v a r >   =   < c o d e > s t r i d e [ < / c o d e > < v a r > i < / v a r > < c o d e > ] < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " a r r a y v i e w . c o n s " > 2 3 . 7 . 2 . 2   < c o d e > a r r a y _ v i e w < / c o d e >   c o n s t r u c t o r s ,   c o p y ,   a n d   a s s i g n m e n t   [ a r r a y v i e w . c o n s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 F o r   t h e   p u r p o s e   o f   t h i s   s u b c l a u s e ,   < e m > < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > U < / c o d e > < / e m >   i s   a   t y p e   s a t i s f y i n g   t h e   r e q u i r e m e n t s   s e t   o u t   i n   T a b l e   1 0 4 .   I n   t h e s e   d e f i n i t i o n s ,   l e t   < c o d e > v < / c o d e >   d e n o t e   a n   e x p r e s s i o n   < d e l   c l a s s = " n 4 3 4 6 " > o f < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > w h i c h   t y p e   i s < / i n s >   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > U < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " >   t y p e < / d e l > . 
 
 < / p > 
 
 
 
 < t a b l e > 
 
 < c a p t i o n > T a b l e   1 0 4 :   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > U < / c o d e >   r e q u i r e m e n t s < / c a p t i o n > 
 
 < t b o d y > 
 
 < t r > < t h > E x p r e s s i o n < / t h > < t h > R e t u r n   t y p e < / t h > < t h > O p e r a t i o n a l   s e m a n t i c s < / t h > < / t r > 
 
 < t r > < t d > < c o d e > v . s i z e ( ) < / c o d e > < / t d > 
 
 < t d > C o n v e r t i b l e   t o   < c o d e > p t r d i f f _ t < / c o d e > < / t d > 
 
 < t d > < / t d > < / t r > 
 
 < t r > < t d > < c o d e > v . d a t a ( ) < / c o d e > < / t d > 
 
 < t d > T y p e   < c o d e > T * < / c o d e >   s u c h   t h a t   < c o d e > T * < / c o d e >   i s   i m p l i c i t l y   c o n v e r t i b l e   t o   < c o d e > U * < / c o d e > ,   a n d   < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; T & g t ; ,   r e m o v e _ c v _ t & l t ; U & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > . < / t d > 
 
 < t d > < c o d e > s t a t i c _ c a s t & l t ; U * & g t ; ( v . d a t a ( ) ) < / c o d e >   p o i n t s   t o   a   c o n t i g u o u s   s e q u e n c e   o f   a t   l e a s t   < c o d e > v . s i z e ( ) < / c o d e >   o b j e c t s   o f   ( p o s s i b l y   c v - q u a l i f i e d )   t y p e   < c o d e > r e m o v e _ c v _ t & l t ; U & g t ; < / c o d e > . < / t d > < / t r > 
 
 < / t b o d y > 
 
 < / t a b l e > 
 
 
 
 < p > 
 
 < i > [ E x a m p l e : < / i >   T h e   t y p e   < c o d e > v e c t o r & l t ; i n t & g t ; < / c o d e >   ( [ v e c t o r ] )   m e e t s   t h e   r e q u i r e m e n t s   o f   a l l   o f   t h e   f o l l o w i n g :   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > i n t < / c o d e > ,   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > c o n s t   i n t < / c o d e > ,   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > v o l a t i l e   i n t < / c o d e > ,   a n d   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > c o n s t   v o l a t i l e   i n t < / c o d e > .   & m d a s h ; < i > e n d   e x a m p l e < / i > ] 
 
 < / p > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   a r r a y _ v i e w ( )   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _   = =   n u l l p t r < / c o d e >   a n d   < / i n s > < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s > . s i z e ( )   = =   0 < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " >   a n d   < c o d e > d a t a ( )   = =   n u l l p t r < / c o d e > < / d e l > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; c l a s s   V i e w a b l e & g t ; 
 
     c o n s t e x p r   a r r a y _ v i e w ( V i e w a b l e & &   < v a r > v w < / v a r > ) ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > < v a r > v w < / v a r > < / c o d e >   s h a l l   s a t i s f y   t h e   r e q u i r e m e n t s   o f   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > v a l u e _ t y p e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _   = =   < v a r > v w < / v a r > . d a t a ( ) < / c o d e >   a n d   < / i n s > < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s > . s i z e ( )   = =   < v a r > v w < / v a r > . s i z e ( ) < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " >   a n d   < c o d e > d a t a ( )   = =   < v a r > v w < / v a r > . d a t a ( ) < / c o d e > < / d e l > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s : 
 
 < u l > 
 
 < l i > < c o d e > R a n k < / c o d e >   i s   1 , < / l i > 
 
 < l i > < c o d e > V i e w a b l e < / c o d e >   s a t i s f i e s   t h e   s y n t a c t i c   r e q u i r e m e n t s   s e t   i n   T a b l e   1 0 4   f o r   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > v a l u e _ t y p e < / c o d e > ,   a n d < / l i > 
 
 < l i > < c o d e > d e c a y _ t & l t ; V i e w a b l e & g t ; < / c o d e >   i s   n o t   < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > a r r a y _ v i e w & l t ; U ,   N & g t ; < / c o d e >   f o r   a n y   < c o d e > U < / c o d e >   a n d   < c o d e > N < / c o d e > < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > a   s p e c i a l i z a t i o n   o f   < c o d e > a r r a y _ v i e w < / c o d e > < / i n s > . < / l i > 
 
 < / u l > 
 
 < i >   [ N o t e : < / i > 
 
 T h i s   p r o v i s i o n   e n s u r e s   t h a t   e i t h e r   t h e   f o l l o w i n g   o r   t h e   i m p l i c i t   c o p y   c o n s t r u c t o r   & m d a s h ;   b o t h   o f   w h i c h   a r e   < c o d e > n o e x c e p t < / c o d e >   & m d a s h ;   w i l l   b e   s e l e c t e d   b y   o v e r l o a d   r e s o l u t i o n   i n s t e a d .   
 
 & m d a s h ; < i > e n d   n o t e < / i > ] 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; c l a s s   U ,   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   A n y R a n k & g t ; 
 
     c o n s t e x p r   a r r a y _ v i e w ( c o n s t   a r r a y _ v i e w & l t ; U ,   A n y R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _   = =   < v a r > r h s < / v a r > . d a t a ( ) < / c o d e >   a n d   < / i n s > < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s > . s i z e ( )   = =   < v a r > r h s < / v a r > . s i z e ( ) < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " >   a n d   < c o d e > d a t a ( )   = =   < v a r > r h s < / v a r > . d a t a ( ) < / c o d e > < / d e l > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s : 
 
 < u l > 
 
 < l i > < c o d e > R a n k < / c o d e >   i s   1 , < / l i > 
 
 < l i > < c o d e > i s _ c o n v e r t i b l e _ v & l t ; a d d _ p o i n t e r _ t & l t ; U & g t ; ,   p o i n t e r & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > ,   a n d < / l i > 
 
 < l i > < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; U & g t ; ,   r e m o v e _ c v _ t & l t ; v a l u e _ t y p e & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > . < / l i > 
 
 < / u l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; < d e l   c l a s s = " n 4 3 4 6 " > c l a s s   A r r a y T y p e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t   E x t e n t < / i n s > & g t ; 
 
     c o n s t e x p r   a r r a y _ v i e w ( < d e l   c l a s s = " n 4 3 4 6 " > A r r a y T y p e & < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > v a l u e _ t y p e   ( & < / i n s > < v a r > a r r < / v a r > < i n s   c l a s s = " n 4 3 4 6 " > ) [ E x t e n t ] < / i n s > )   n o e x c e p t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _ < i n s   c l a s s = " n 4 3 4 6 " >   = =   < v a r > a r r < / v a r > < / c o d e >   a n d   < / i n s > < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) [ < v a r > i < / v a r > ] < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ . s i z e ( ) < / i n s >   = =   < i n s   c l a s s = " n 4 3 4 6 " > E x t e n t < / i n s > < d e l   c l a s s = " n 4 3 4 6 " > e x t e n t _ v & l t ; A r r a y T y p e ,   < v a r > i < / v a r > & g t ; < / d e l > < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " >   f o r   a l l   < c o d e > < v a r > i < / v a r > < / c o d e >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > ,   a n d   < c o d e > d a t a ( ) < / c o d e >   i s   e q u a l   t o   t h e   a d d r e s s   o f   t h e   i n i t i a l   e l e m e n t   i n   < c o d e > < v a r > a r r < / v a r > < / c o d e > < / d e l > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s < d e l   c l a s s = " n 4 3 4 6 " > : < / d e l > < i n s   c l a s s = " n 4 3 4 6 " >   < c o d e > R a n k < / c o d e >   i s   1 . < / i n s > 
 
 < u l > 
 
 < l i > < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > i s _ c o n v e r t i b l e _ v & l t ; a d d _ p o i n t e r _ t & l t ; r e m o v e _ a l l _ e x t e n t s _ t & l t ; A r r a y T y p e & g t ; & g t ; ,   p o i n t e r & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > , < / d e l > < / l i > 
 
 < l i > < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; r e m o v e _ a l l _ e x t e n t s _ t & l t ; A r r a y T y p e & g t ; & g t ; ,   r e m o v e _ c v _ t & l t ; v a l u e _ t y p e & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > ,   a n d < / d e l > < / l i > 
 
 < l i > < d e l   c l a s s = " n 4 3 4 6 " > < c o d e > r a n k _ v & l t ; A r r a y T y p e & g t ;   = =   R a n k < / c o d e > . < / d e l > < / l i > 
 
 < / u l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > [ E x a m p l e : < / i > < / d e l > 
 
 < p r e > < c o d e > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > c h a r   a [ 3 ] [ 1 ] [ 4 ]   { { { ' H ' ,   ' i ' } } } ; 
 
 a u t o   a v   =   a r r a y _ v i e w & l t ; c h a r ,   3 & g t ; { a } ; 
 
 / /   t h e   f o l l o w i n g   a s s e r t i o n s   h o l d : 
 
 a s s e r t ( ( a v . b o u n d s ( )   = =   b o u n d s < 3 > { 3 ,   1 ,   4 } ) ) ; 
 
 a s s e r t ( ( a v [ { 0 ,   0 ,   0 } ]   = =   ' H ' ) ) ; < / 3 > 
 
 < / c o d e > < / p r e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > & m d a s h ; < i > e n d   e x a m p l e < / i > ] < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
     c o n s t e x p r   a r r a y _ v i e w ( c o n s t   a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _   = =   < v a r > r h s < / v a r > . d a t a ( ) < / c o d e >   a n d   < / i n s > < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > r h s < / v a r > . b o u n d s ( ) < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " >   a n d   < c o d e > d a t a ( )   = =   < v a r > r h s < / v a r > . d a t a ( ) < / c o d e > < / d e l > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > i s _ c o n v e r t i b l e _ v & l t ; a d d _ p o i n t e r _ t & l t ; U & g t ; ,   p o i n t e r & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e >   a n d   < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; U & g t ; ,   r e m o v e _ c v _ t & l t ; v a l u e _ t y p e & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; c l a s s   V i e w a b l e & g t ; 
 
     c o n s t e x p r   a r r a y _ v i e w ( V i e w a b l e & &   < v a r > v w < / v a r > ,   b o u n d s _ t y p e   < v a r > b o u n d s < / v a r > ) ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > < v a r > b o u n d s < / v a r > . s i z e ( )   < =   < v a r > v w < / v a r > . s i z e ( ) < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < c o d e > d a t a < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > v w < / v a r > . d a t a ( ) < / c o d e >   a n d   < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > b o u n d s < / v a r > < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   c o n s t r u c t o r   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > V i e w a b l e < / c o d e >   s a t i s f i e s   t h e   s y n t a c t i c   r e q u i r e m e n t s   s e t   i n   T a b l e   1 0 4   f o r   < c o d e > V i e w a b l e < / c o d e >   o n   < c o d e > v a l u e _ t y p e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > [ N o t e : < / i > 
 
 T h i s   c o n s t r u c t o r   m a y   b e   u s e d   t o   c r e a t e   a n   < c o d e > a r r a y _ v i e w < / c o d e >   w i t h   a   d i f f e r e n t   r a n k   a n d / o r   b o u n d s   t h a n   t h e   o r i g i n a l   < c o d e > a r r a y _ v i e w < / c o d e > ,   i . e .   r e s h a p e   t h e   v i e w . 
 
 & m d a s h ; < i > e n d   n o t e < / i > ] 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   a r r a y _ v i e w ( p o i n t e r   < v a r > p t r < / v a r > ,   b o u n d s _ t y p e   < v a r > b o u n d s < / v a r > ) ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > [ < v a r > p t r < / v a r > ,   < v a r > p t r < / v a r >   +   < v a r > b o u n d s < / v a r > . s i z e ( ) ) < / c o d e >   i s   a   v a l i d   r a n g e . 
 
 < / p > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < c o d e > d a t a < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > p t r < / v a r > < / c o d e >   a n d   < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > b o u n d s < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
     c o n s t e x p r   a r r a y _ v i e w &   o p e r a t o r = ( c o n s t   a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / d e l > < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > P o s t c o n d i t i o n s : < / i > 
 
 < c o d e > b o u n d s ( )   = =   < v a r > r h s < / v a r > . b o u n d s ( ) < / c o d e >   a n d   < c o d e > d a t a ( )   = =   < v a r > r h s < / v a r > . d a t a ( ) < / c o d e > . < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > i s _ c o n v e r t i b l e _ v & l t ; a d d _ p o i n t e r _ t & l t ; U & g t ; ,   p o i n t e r & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e >   a n d   < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; U & g t ; ,   r e m o v e _ c v _ t & l t ; v a l u e _ t y p e & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " a r r a y v i e w . o b s " > 2 3 . 7 . 2 . 3   < c o d e > a r r a y _ v i e w < / c o d e >   o b s e r v e r s   [ a r r a y v i e w . o b s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s _ t y p e   b o u n d s ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > T h e   b o u n d s   o f   t h e   v i e w < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > b o u n d s _ < / c o d e > < / i n s > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   s i z e _ t y p e   s i z e ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s ( ) . s i z e ( ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   s t r i d e ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   v a l u e   < c o d e > < v a r > s < / v a r > < / c o d e >   s u c h   t h a t : 
 
 < u l > 
 
 < l i > < c o d e > < v a r > s < / v a r > [ < v a r > i < / v a r > ]   = =   < v a r > s < / v a r > [ < v a r > i < / v a r >   +   1 ]   *   b o u n d s ( ) [ < v a r > i < / v a r >   +   1 ] < / c o d e > ,   w h e n   < c o d e > 0   & l t ; =   < v a r > i < / v a r > < / c o d e >   a n d   < c o d e > < v a r > i < / v a r >   & l t ;   R a n k   -   1 < / c o d e > . < / l i > 
 
 < l i > < c o d e > < v a r > s < / v a r > [ < v a r > i < / v a r > ]   = =   1 < / c o d e > ,   w h e n   < c o d e > < v a r > i < / v a r >   = =   R a n k   -   1 < / c o d e > . < / l i > 
 
 < / u l > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   p o i n t e r   d a t a ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > A   p o i n t e r   t o   t h e   c o n t i g u o u s   s e q u e n c e   o n   w h i c h   t h e   v i e w   w a s   c r e a t e d < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _ < / c o d e > < / i n s > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " a r r a y v i e w . e l e m " > 2 3 . 7 . 2 . 4   < c o d e > a r r a y _ v i e w < / c o d e >   e l e m e n t   a c c e s s   [ a r r a y v i e w . e l e m ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   r e f e r e n c e   o p e r a t o r [ ] ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > i d x < / v a r > )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > b o u n d s ( ) . c o n t a i n s ( < v a r > i d x < / v a r > )   = =   t r u e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > < i > V I E W _ A C C E S S < / i > ( d a t a ( ) ,   < v a r > i d x < / v a r > ,   s t r i d e ( ) ,   R a n k ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " a r r a y v i e w . s u b v i e w " > 2 3 . 7 . 2 . 5   < c o d e > a r r a y _ v i e w < / c o d e >   s l i c i n g   a n d   s e c t i o n i n g   [ a r r a y v i e w . s u b v i e w ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   a r r a y _ v i e w & l t ; T ,   R a n k   -   1 & g t ; 
 
     o p e r a t o r [ ] ( p t r d i f f _ t   < v a r > s l i c e < / v a r > )   c o n s t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > 0   & l t ; =   < v a r > s l i c e < / v a r > < / c o d e >   a n d   < c o d e > < v a r > s l i c e < / v a r >   & l t ;   b o u n d s ( ) [ 0 ] < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   v i e w   < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > < / c o d e > < / i n s >   s u c h   t h a t   < d e l   c l a s s = " n 4 3 4 6 " > t h e   i n i t i a l   e l e m e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . d a t a _ < / c o d e > < / i n s >   i s   < c o d e > ( * t h i s ) [ { < v a r > s l i c e < / v a r > ,   0 ,   0 ,   . . . ,   0 } ] < / c o d e > ,   a n d   < d e l   c l a s s = " n 4 3 4 6 " > t h e   b o u n d s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . b o u n d s _ < / c o d e > < / i n s >   < d e l   c l a s s = " n 4 3 4 6 " > a r e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s < / i n s >   < c o d e > { b o u n d s ( ) [ 1 ] ,   b o u n d s ( ) [ 2 ] ,   . . . ,   b o u n d s ( ) [ R a n k   -   1 ] } < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k   & g t ;   1 < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
     s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > ,   c o n s t   b o u n d s _ t y p e &   < v a r > s e c t i o n _ b n d < / v a r > )   c o n s t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > b o u n d s ( ) . c o n t a i n s ( < v a r > o r i g i n < / v a r >   +   < v a r > i d x < / v a r > )   = =   t r u e < / c o d e >   f o r   a n y   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > i d x < / v a r > < / c o d e >   s u c h   t h a t   < c o d e > < v a r > s e c t i o n _ b n d < / v a r > . c o n t a i n s ( < v a r > i d x < / v a r > )   = =   t r u e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   s t r i d e d   v i e w   < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > < / c o d e > < / i n s >   s u c h   t h a t   < d e l   c l a s s = " n 4 3 4 6 " > t h e   i n i t i a l   e l e m e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . d a t a _ < / c o d e > < / i n s >   i s   < c o d e > ( * t h i s ) [ < v a r > o r i g i n < / v a r > ] < / c o d e > ,   < d e l   c l a s s = " n 4 3 4 6 " > t h e   s t r i d e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . s t r i d e _ < / c o d e > < / i n s >   i s   < c o d e > s t r i d e ( ) < / c o d e > ,   a n d   < d e l   c l a s s = " n 4 3 4 6 " > t h e   b o u n d s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . b o u n d s _ < / c o d e > < / i n s >   < d e l   c l a s s = " n 4 3 4 6 " > a r e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s < / i n s >   < c o d e > < v a r > s e c t i o n _ b n d < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
     s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > )   c o n s t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > b o u n d s ( ) . c o n t a i n s ( < v a r > o r i g i n < / v a r >   +   < v a r > i d x < / v a r > )   = =   t r u e < / c o d e >   f o r   a n y   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > i d x < / v a r > < / c o d e >   s u c h   t h a t   < c o d e > ( b o u n d s ( )   -   < v a r > o r i g i n < / v a r > ) . c o n t a i n s ( < v a r > i d x < / v a r > )   = =   t r u e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   s t r i d e d   v i e w   < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > < / c o d e > < / i n s >   s u c h   t h a t   < d e l   c l a s s = " n 4 3 4 6 " > t h e   i n i t i a l   e l e m e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . d a t a _ < / c o d e > < / i n s >   i s   < c o d e > ( * t h i s ) [ < v a r > o r i g i n < / v a r > ] < / c o d e > ,   < d e l   c l a s s = " n 4 3 4 6 " > t h e   s t r i d e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . s t r i d e _ < / c o d e > < / i n s >   i s   < c o d e > s t r i d e ( ) < / c o d e > ,   a n d   < d e l   c l a s s = " n 4 3 4 6 " > t h e   b o u n d s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . b o u n d s _ < / c o d e > < / i n s >   < d e l   c l a s s = " n 4 3 4 6 " > a r e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s < / i n s >   < c o d e > b o u n d s ( )   -   < v a r > o r i g i n < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " s t r i d e d a r r a y v i e w " > 2 3 . 7 . 3   C l a s s   t e m p l a t e   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   [ s t r i d e d a r r a y v i e w ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p r e > < c o d e > 
 
 n a m e s p a c e   s t d   { 
 
     t e m p l a t e   & l t ; c l a s s   T ,   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   R a n k   =   1 & g t ; 
 
     c l a s s   s t r i d e d _ a r r a y _ v i e w   { 
 
     p u b l i c : 
 
         / /   c o n s t a n t s   a n d   t y p e s 
 
         s t a t i c   c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > s i z e _ t < / i n s >   r a n k   =   R a n k ; 
 
         u s i n g   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e                     =   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > & l t ; R a n k & g t ; ; 
 
         u s i n g   b o u n d s _ t y p e                   =   b o u n d s & l t ; R a n k & g t ; ; 
 
         u s i n g   s i z e _ t y p e                       =   s i z e _ t ; 
 
         u s i n g   v a l u e _ t y p e                     =   T ; 
 
         u s i n g   p o i n t e r                           =   T * ; 
 
         u s i n g   r e f e r e n c e                       =   T & ; 
 
 
 
         / /   [ s t r i d e d a r r a y v i e w . c o n s ] ,   s t r i d e d _ a r r a y _ v i e w   c o n s t r u c t o r s ,   c o p y ,   a n d   a s s i g n m e n t 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( )   n o e x c e p t ; 
 
 
 
         t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
             c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( c o n s t   a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; 
 
         t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
             c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( c o n s t   s t r i d e d _ a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; 
 
 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( p o i n t e r   < v a r > p t r < / v a r > ,   b o u n d s _ t y p e   < v a r > b o u n d s < / v a r > ,   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > s t r i d e < / v a r > ) ; 
 
 
 
         < d e l   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
             c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w &   o p e r a t o r = ( c o n s t   s t r i d e d _ a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / d e l > 
 
 
 
         / /   [ s t r i d e d a r r a y v i e w . o b s ] ,   s t r i d e d _ a r r a y _ v i e w   o b s e r v e r s 
 
         c o n s t e x p r   b o u n d s _ t y p e   b o u n d s ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   s i z e _ t y p e       s i z e ( )   c o n s t   n o e x c e p t ; 
 
         c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e     s t r i d e ( )   c o n s t   n o e x c e p t ; 
 
 
 
         / /   [ s t r i d e d a r r a y v i e w . e l e m ] ,   s t r i d e d _ a r r a y _ v i e w   e l e m e n t   a c c e s s 
 
         c o n s t e x p r   r e f e r e n c e   o p e r a t o r [ ] ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > i d x < / v a r > )   c o n s t ; 
 
 
 
         / /   [ s t r i d e d a r r a y v i e w . s u b v i e w ] ,   s t r i d e d _ a r r a y _ v i e w   s l i c i n g   a n d   s e c t i o n i n g 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k   -   1 & g t ; 
 
             o p e r a t o r [ ] ( p t r d i f f _ t   < v a r > s l i c e < / v a r > )   c o n s t ;             / /   o n l y   i f   R a n k   >   1 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
             s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > ,   c o n s t   b o u n d s _ t y p e &   < v a r > s e c t i o n _ b n d < / v a r > )   c o n s t ; 
 
         c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
             s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > )   c o n s t ; 
 
 
 
     p r i v a t e : 
 
         p o i n t e r           d a t a _ ;         / /   e x p o s i t i o n   o n l y 
 
         < i n s   c l a s s = " n 4 3 4 6 " > b o u n d s _ t y p e   b o u n d s _ ;     / /   e x p o s i t i o n   o n l y < / i n s > 
 
         < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t _ t y p e   s t r i d e _ ;     / /   e x p o s i t i o n   o n l y < / i n s > 
 
     } ; 
 
 } 
 
 < / c o d e > < / p r e > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " s t r i d e d a r r a y v i e w . r e q u i r e " > < i n s   c l a s s = " n 4 3 4 6 " > 2 3 . 7 . 3 . 1   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   r e q u i r e m e n t s   [ s t r i d e d a r r a y v i e w . r e q u i r e ] < / i n s > < / a > < / h 3 > 
 
 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > A d d   a   n e w   s e c t i o n : < / i n s > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > T < / c o d e >   s h a l l   b e   a n   o b j e c t   t y p e .   < i > [ N o t e : < / i >   T h e   t y p e   c a n   b e   c v - q u a l i f i e d ,   r e s u l t i n g   i n   s e m a n t i c s   s i m i l a r   t o   t h e   s e m a n t i c s   o f   a   p o i n t e r   t o   c v - q u a l i f i e d   t y p e .   & m d a s h ; < i > e n d   n o t e < / i > ] < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > I f   < c o d e > R a n k < / c o d e >   i s   l e s s   t h a n   1   t h e   p r o g r a m   i s   i l l - f o r m e d . < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > A n y   o p e r a t i o n   t h a t   i n v a l i d a t e s   a   p o i n t e r   i n   t h e   r a n g e   o n   w h i c h   a   v i e w   w a s   c r e a t e d   i n v a l i d a t e s   p o i n t e r s   a n d   r e f e r e n c e s   r e t u r n e d   f r o m   t h e   v i e w ' s   f u n c t i o n s . < / i n s > 
 
 < / p > 
 
 < p > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > D e f i n e   < c o d e > < i > V I E W _ A C C E S S < / i > ( d a t a ,   i d x ,   s t r i d e ,   r a n k ) < / c o d e >   a s   < c o d e > * ( d a t a   +   < v a r > o f f s e t < / v a r > ) < / c o d e >   w h e r e   [ < i > E d i t o r i a l   n o t e : < / i >   T h e   f o l l o w i n g   e x p r e s s i o n   s h o u l d   b e   f o r m a t t e d   a s   L a T e X   c o d e   & m d a s h ; < i > e n d   n o t e < / i > ]   < c o d e > o f f s e t   =   \ s u m _ { i = 0 } ^ { r a n k   -   1 }   i d x _ i   \ t i m e s   s t r i d e _ i < / c o d e > ,   < v a r > i d x < s u b > i < / s u b > < / v a r >   =   < c o d e > < v a r > i d x < / v a r > [ < / c o d e > < v a r > i < / v a r > < c o d e > ] < / c o d e > ,   a n d   < v a r > s t r i d e < s u b > i < / s u b > < / v a r >   =   < c o d e > s t r i d e [ < / c o d e > < v a r > i < / v a r > < c o d e > ] < / c o d e > . < / i n s > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " s t r i d e d a r r a y v i e w . c o n s " > 2 3 . 7 . 3 . 2   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   c o n s t r u c t o r s ,   c o p y ,   a n d   a s s i g n m e n t   [ s t r i d e d a r r a y v i e w . c o n s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( )   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > d a t a _   = =   n u l l p t r < / c o d e > ,   < / i n s > < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s > . s i z e ( )   = =   0 < / c o d e > , < i n s   c l a s s = " n 4 3 4 6 " >   a n d < / i n s >   < c o d e > s t r i d e < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e { } < / c o d e > < d e l   c l a s s = " n 4 3 4 6 " > ,   a n d   < c o d e > d a t a _   = =   n u l l p t r < / c o d e > < / d e l > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
     c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( c o n s t   a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; 
 
 t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
     c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( c o n s t   s t r i d e d _ a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 F o r   b o t h   c o n s t r u c t o r s ,   < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > r h s < / v a r > . b o u n d s ( ) < / c o d e >   a n d   < c o d e > s t r i d e < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > r h s < / v a r > . s t r i d e ( ) < / c o d e > .   F o r   t h e   f i r s t   c o n s t r u c t o r ,   < c o d e > d a t a _   = =   < v a r > r h s < / v a r > . d a t a ( ) < / c o d e > .   F o r   t h e   s e c o n d   c o n s t r u c t o r ,   < c o d e > d a t a _   = =   < v a r > r h s < / v a r > . d a t a _ < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h e s e   c o n s t r u c t o r s   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > i s _ c o n v e r t i b l e _ v & l t ; a d d _ p o i n t e r _ t & l t ; U & g t ; ,   p o i n t e r & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e >   a n d   < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; U & g t ; ,   r e m o v e _ c v _ t & l t ; v a l u e _ t y p e & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w ( p o i n t e r   < v a r > p t r < / v a r > ,   b o u n d s _ t y p e   < v a r > b o u n d s < / v a r > ,   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > s t r i d e < / v a r > ) ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 F o r   a n y   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > i d x < / v a r > < / c o d e >   s u c h   t h a t   < c o d e > < v a r > b o u n d s < / v a r > . c o n t a i n s ( < v a r > i d x < / v a r > ) < / c o d e > : 
 
 < u l > 
 
 < l i > T h e   e x p r e s s i o n   < c o d e > < v a r > i d x < / v a r > [ < v a r > i < / v a r > ]   *   < v a r > s t r i d e < / v a r > [ < v a r > i < / v a r > ] < / c o d e >   s h a l l   b e   w e l l   f o r m e d   a n d   s h a l l   h a v e   w e l l   d e f i n e d   b e h a v i o r   [ < i > N o t e : < / i >   I t   f o l l o w s   t h a t   t h e   r e s u l t   d o e s   n o t   o v e r f l o w   t y p e   < c o d e > p t r d i f f _ t < / c o d e > .   & m d a s h ; < i > e n d   n o t e < / i > ]   f o r   a l l   < v a r > i < / v a r >   i n   t h e   r a n g e   < c o d e > [ 0 ,   R a n k ) < / c o d e > . < / l i > 
 
 < l i > T h e   e x p r e s s i o n   < c o d e > < i > V I E W _ A C C E S S < / i > ( < v a r > p t r < / v a r > ,   < v a r > i d x < / v a r > ,   < v a r > s t r i d e < / v a r > ,   R a n k ) < / c o d e >   s h a l l   b e   w e l l   f o r m e d   a n d   s h a l l   h a v e   w e l l   d e f i n e d   b e h a v i o r . < / l i > 
 
 < / u l > 
 
 < p > 
 
 < i > P o s t c o n d i t i o n s : < / i > 
 
 < c o d e > d a t a _   = =   < v a r > p t r < / v a r > < / c o d e > ,   < c o d e > b o u n d s < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > b o u n d s < / v a r > < / c o d e > ,   a n d   < c o d e > s t r i d e < d e l   c l a s s = " n 4 3 4 6 " > ( ) < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > _ < / i n s >   = =   < v a r > s t r i d e < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > t e m p l a t e   & l t ; c l a s s   U & g t ; 
 
     c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w &   o p e r a t o r = ( c o n s t   s t r i d e d _ a r r a y _ v i e w & l t ; U ,   R a n k & g t ; &   < v a r > r h s < / v a r > )   n o e x c e p t ; < / d e l > < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > P o s t c o n d i t i o n s : < / i > 
 
 < c o d e > b o u n d s ( )   = =   < v a r > r h s < / v a r > . b o u n d s ( ) < / c o d e > ,   < c o d e > s t r i d e ( )   = =   < v a r > r h s < / v a r > . s t r i d e ( ) < / c o d e > ,   a n d   < c o d e > d a t a _   = =   < v a r > r h s < / v a r > . d a t a _ < / c o d e > . < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e t u r n s : < / i > 
 
 < c o d e > * t h i s < / c o d e > . < / d e l > 
 
 < / p > 
 
 < p > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > i s _ c o n v e r t i b l e _ v & l t ; a d d _ p o i n t e r _ t & l t ; U & g t ; ,   p o i n t e r & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e >   a n d   < c o d e > i s _ s a m e _ v & l t ; r e m o v e _ c v _ t & l t ; U & g t ; ,   r e m o v e _ c v _ t & l t ; v a l u e _ t y p e & g t ; & g t ; < / c o d e >   i s   < c o d e > t r u e < / c o d e > . < / d e l > 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " s t r i d e d a r r a y v i e w . o b s " > 2 3 . 7 . 3 . 3   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   o b s e r v e r s   [ s t r i d e d a r r a y v i e w . o b s ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   b o u n d s _ t y p e   b o u n d s ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > T h e   b o u n d s   o f   t h e   v i e w < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > b o u n d s _ < / c o d e > < / i n s > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   s i z e _ t y p e   s i z e ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > b o u n d s ( ) . s i z e ( ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   s t r i d e ( )   c o n s t   n o e x c e p t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < d e l   c l a s s = " n 4 3 4 6 " > T h e   s t r i d e   o f   t h e   v i e w < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > s t r i d e _ < / c o d e > < / i n s > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " s t r i d e d a r r a y v i e w . e l e m " > 2 3 . 7 . 3 . 4   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   e l e m e n t   a c c e s s   [ s t r i d e d a r r a y v i e w . e l e m ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < c o d e > c o n s t e x p r   r e f e r e n c e   o p e r a t o r [ ] ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > i d x < / v a r > )   c o n s t ; < / c o d e > 
 
 < / p > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > b o u n d s ( ) . c o n t a i n s ( < v a r > i d x < / v a r > )   = =   t r u e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 < c o d e > < i > V I E W _ A C C E S S < / i > ( d a t a _ ,   < v a r > i d x < / v a r > ,   s t r i d e ( ) ,   R a n k ) < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " s t r i d e d a r r a y v i e w . s u b v i e w " > 2 3 . 7 . 3 . 5   < c o d e > s t r i d e d _ a r r a y _ v i e w < / c o d e >   s l i c i n g   a n d   s e c t i o n i n g   [ s t r i d e d a r r a y v i e w . s u b v i e w ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 A d d   a   n e w   s e c t i o n : 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d i n s " > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k   -   1 & g t ; 
 
     o p e r a t o r [ ] ( p t r d i f f _ t   < v a r > s l i c e < / v a r > )   c o n s t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > 0   & l t ; =   < v a r > s l i c e < / v a r > < / c o d e >   a n d   < c o d e > < v a r > s l i c e < / v a r >   & l t ;   b o u n d s ( ) [ 0 ] < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   s t r i d e d   v i e w   < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > < / c o d e > < / i n s >   s u c h   t h a t   < d e l   c l a s s = " n 4 3 4 6 " > t h e   i n i t i a l   e l e m e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . d a t a _ < / c o d e > < / i n s >   i s   < c o d e > ( * t h i s ) [ { < v a r > s l i c e < / v a r > ,   0 ,   0 ,   . . . ,   0 } ] < / c o d e > ,   < d e l   c l a s s = " n 4 3 4 6 " > t h e   b o u n d s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . b o u n d s _ < / c o d e > < / i n s >   < d e l   c l a s s = " n 4 3 4 6 " > a r e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s < / i n s >   < c o d e > { b o u n d s ( ) [ 1 ] ,   b o u n d s ( ) [ 2 ] ,   . . . ,   b o u n d s ( ) [ R a n k   -   1 ] } < / c o d e > ,   a n d   < d e l   c l a s s = " n 4 3 4 6 " > t h e   s t r i d e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . s t r i d e _ < / c o d e > < / i n s >   i s   < c o d e > { s t r i d e ( ) [ 1 ] ,   s t r i d e ( ) [ 2 ] ,   . . . ,   s t r i d e ( ) [ R a n k   -   1 ] } < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e m a r k s : < / i > 
 
 T h i s   f u n c t i o n   s h a l l   n o t   p a r t i c i p a t e   i n   o v e r l o a d   r e s o l u t i o n   u n l e s s   < c o d e > R a n k   & g t ;   1 < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
     s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > ,   c o n s t   b o u n d s _ t y p e &   < v a r > s e c t i o n _ b n d < / v a r > )   c o n s t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > b o u n d s ( ) . c o n t a i n s ( < v a r > o r i g i n < / v a r >   +   < v a r > i d x < / v a r > )   = =   t r u e < / c o d e >   f o r   a n y   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > i d x < / v a r > < / c o d e >   s u c h   t h a t   < c o d e > < v a r > s e c t i o n _ b n d < / v a r > . c o n t a i n s ( < v a r > i d x < / v a r > )   = =   t r u e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   s t r i d e d   v i e w   < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > < / c o d e > < / i n s >   s u c h   t h a t   < d e l   c l a s s = " n 4 3 4 6 " > t h e   i n i t i a l   e l e m e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . d a t a _ < / c o d e > < / i n s >   i s   < c o d e > ( * t h i s ) [ < v a r > o r i g i n < / v a r > ] < / c o d e > ,   < d e l   c l a s s = " n 4 3 4 6 " > t h e   s t r i d e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . s t r i d e _ < / i n s > < / c o d e >   i s   < c o d e > s t r i d e ( ) < / c o d e > ,   a n d   < d e l   c l a s s = " n 4 3 4 6 " > t h e   b o u n d s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . b o u n d s _ < / c o d e > < / i n s >   < d e l   c l a s s = " n 4 3 4 6 " > a r e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s < / i n s >   < c o d e > < v a r > s e c t i o n _ b n d < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < p > 
 
 < p r e > < c o d e > c o n s t e x p r   s t r i d e d _ a r r a y _ v i e w & l t ; T ,   R a n k & g t ; 
 
     s e c t i o n ( c o n s t   < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e &   < v a r > o r i g i n < / v a r > )   c o n s t ; < / c o d e > < / p r e > 
 
 
 
 < b l o c k q u o t e > 
 
 < p > 
 
 < i > R e q u i r e s : < / i > 
 
 < c o d e > b o u n d s ( ) . c o n t a i n s ( < v a r > o r i g i n < / v a r >   +   < v a r > i d x < / v a r > )   = =   t r u e < / c o d e >   f o r   a n y   < c o d e > < d e l   c l a s s = " n 4 3 4 6 " > i n d e x < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > o f f s e t < / i n s > _ t y p e   < v a r > i d x < / v a r > < / c o d e >   s u c h   t h a t   < c o d e > ( b o u n d s ( )   -   < v a r > o r i g i n < / v a r > ) . c o n t a i n s ( < v a r > i d x < / v a r > )   = =   t r u e < / c o d e > . 
 
 < / p > 
 
 < p > 
 
 < i > R e t u r n s : < / i > 
 
 A   s t r i d e d   v i e w   < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > < / c o d e > < / i n s >   s u c h   t h a t   < d e l   c l a s s = " n 4 3 4 6 " > t h e   i n i t i a l   e l e m e n t < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . d a t a _ < / c o d e > < / i n s >   i s   < c o d e > ( * t h i s ) [ < v a r > o r i g i n < / v a r > ] < / c o d e > ,   < d e l   c l a s s = " n 4 3 4 6 " > t h e   s t r i d e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . s t r i d e _ < / c o d e > < / i n s >   i s   < c o d e > s t r i d e ( ) < / c o d e > ,   a n d   < d e l   c l a s s = " n 4 3 4 6 " > t h e   b o u n d s < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > < c o d e > < v a r > v w < / v a r > . b o u n d s _ < / c o d e > < / i n s >   < d e l   c l a s s = " n 4 3 4 6 " > a r e < / d e l > < i n s   c l a s s = " n 4 3 4 6 " > i s < / i n s >   < c o d e > b o u n d s ( )   -   < v a r > o r i g i n < / v a r > < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < h 3 > < a   n a m e = " i t e r a t o r . r a n g e " > 2 4 . 7   r a n g e   a c c e s s   [ i t e r a t o r . r a n g e ] < / a > < / h 3 > 
 
 
 
 < p > 
 
 E d i t   w i t h i n   p a r a g r a p h   1   a s   f o l l o w s . 
 
 < / p > 
 
 
 
 < b l o c k q u o t e   c l a s s = " s t d " > 
 
 < p > 
 
 I n   a d d i t i o n   t o   b e i n g   a v a i l a b l e   v i a   i n c l u s i o n   o f   t h e   < c o d e > & l t ; i t e r a t o r & g t ; < / c o d e >   h e a d e r ,   t h e   f u n c t i o n   t e m p l a t e s   i n   2 4 . 7   a r e 
 
 a v a i l a b l e   w h e n   a n y   o f   t h e   f o l l o w i n g   h e a d e r s   a r e   i n c l u d e d :   < c o d e > & l t ; a r r a y & g t ; < / c o d e > , < i n s >   < c o d e > & l t ; c o o r d i n a t e & g t ; < / c o d e > , < / i n s >   < c o d e > & l t ; d e q u e & g t ; < / c o d e > ,   < c o d e > & l t ; f o r w a r d _ l i s t & g t ; < / c o d e > ,   < c o d e > & l t ; l i s t & g t ; < / c o d e > ,   < c o d e > & l t ; m a p & g t ; < / c o d e > ,   < c o d e > & l t ; r e g e x & g t ; < / c o d e > ,   < c o d e > & l t ; s e t & g t ; < / c o d e > ,   < c o d e > & l t ; s t r i n g & g t ; < / c o d e > ,   < c o d e > & l t ; u n o r d e r e d _ m a p & g t ; < / c o d e > ,   < c o d e > & l t ; u n o r d e r e d _ s e t & g t ; < / c o d e > ,   a n d   < c o d e > & l t ; v e c t o r & g t ; < / c o d e > . 
 
 < / p > 
 
 < / b l o c k q u o t e > 
 
 
 
 
 
 < / b o d y > 
 
 < / h t m l > 
 
 