std::ranges:: bidirectional_range
      From cppreference.net
     
     
     
        
         C++
        
        
         
          
           
          
          
         
        
       
       
        
         Ranges library
        
        
         
          
           
            
          
          
           
            
          
          
           
            
          
          
          
           
            
          
          
           
            
          
          
           
            
          
          
           
            
          
          
          
         
        
       
       
              
  | 
             ||||||||||||||||||||||
| Range primitives | |||||||
              
  | 
             |||||||
| Range concepts | ||||||||||||||||||||||||||||||||||
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||
| Range factories | |||||||||
              
  | 
            |||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
             ||||||||||||
| Helper items | |||||||||||||||||
              
  | 
             
              
  | 
            ||||||||||||||||
| 
           
           Défini dans l'en-tête
            
         
            
             <ranges>
            
           
           | 
         ||
| 
           
           
            
             template
            
            
             <
            
            
             class
            
            T
            
             >
            
             
         
             concept bidirectional_range
             
              =
             
               | 
         (depuis C++20) | |
       Le concept
       
        bidirectional_range
       
       est un raffinement du concept
       
        
         range
        
       
       pour lequel
       
        ranges::begin
       
       retourne un modèle de
       
        
         bidirectional_iterator
        
       
       .
      
Exemple
         Exécuter ce code
        
       #include <forward_list> #include <list> #include <ranges> #include <set> #include <unordered_set> int main() { static_assert( std::ranges::bidirectional_range<std::set<int>> and not std::ranges::bidirectional_range<std::unordered_set<int>> and std::ranges::bidirectional_range<std::list<int>> and not std::ranges::bidirectional_range<std::forward_list<int>> ); }
Voir aussi
| 
          
           
            
             
              (C++20)
             
            
           
           
          | 
        
         spécifie une plage dont le type d'itérateur satisfait
         
          
           forward_iterator
          
         
         (concept)  | 
       
| 
          
           
            
             
              (C++20)
             
            
           
           
          | 
        
         spécifie une plage dont le type d'itérateur satisfait
         
          
           random_access_iterator
          
         
         (concept)  |