std::ranges:: less
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
            ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
            ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Old binders and adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
              
  | 
             
              
  | 
            |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
           
           Défini dans l'en-tête
            
         
            
             <functional>
            
           
           | 
         ||
| 
           
           
            
             struct
            
            less
            
             ;
            
           
           
          | 
         (depuis C++20) | |
Objet fonction pour effectuer des comparaisons. Déduit les types de paramètres de l'opérateur d'appel de fonction à partir des arguments (mais pas le type de retour).
         Table des matières | 
       
Types imbriqués
| Type imbriqué | Définition | 
         
          is_transparent
         
         | 
        unspecified | 
Fonctions membres
| 
          
           
            
             operator()
            
           
           
          | 
        
         vérifie si le premier argument est
         
          inférieur
         
         au second
          (fonction membre publique)  | 
       
std::ranges::less:: operator()
| 
            
            
             
              template
             
             
              <
             
             
              class
             
             T,
             
              class
             
             U
             
              >
             
              
          constexpr bool operator ( ) ( T && t, U && u ) const ;  | 
          ||
Étant donnée l'expression std:: forward < T > ( t ) < std:: forward < U > ( u ) comme expr :
- 
         Si
         
          
           expr
          
         
         résulte en un appel à l'
         
          opérateur intégré
         
         
          operator
          
           <
          
         
         comparant des pointeurs, étant donné le
         
          type composite de pointeur
         
         de
         
          
           t
          
         
         et
         
          
           u
          
         
         comme
         
P: 
- 
         
- 
           Si le
           
            
             t
            
           
           converti précède le
           
            
             u
            
           
           converti (tous deux de type
           
P) dans l'ordre total strict défini par l'implémentation sur les pointeurs , retourne true , sinon retourne false . - 
           Si la séquence de conversion de
           
TversPou la séquence de conversion deUversPn'est pas préservatrice d'égalité , le comportement est indéfini. 
 - 
           Si le
           
            
             t
            
           
           converti précède le
           
            
             u
            
           
           converti (tous deux de type
           
 
- Sinon :
 
- 
         
- Retourne le résultat de expr .
 - Si std:: totally_ordered_with < T, U > n'est pas modélisé, le comportement est indéfini.
 
 
Cette surcharge participe à la résolution de surcharge seulement si std:: totally_ordered_with < T, U > est satisfait.
        S'il existe une expression
        
         
          expr1
         
        
        de type
        
         T
        
        et une expression
        
         
          expr2
         
        
        de type
        
         U
        
        , telles que les résultats de comparaison de
        
         
          expr1
         
        
        et
        
         
          expr2
         
        
        violent
        
         l'ordre total strict
        
        (les règles sont définies ci-dessous), le comportement est indéfini.
       
Les résultats de comparaison de expr1 et expr2 suivent un ordre total strict seulement si exactement une des expressions suivantes est true :
- std :: ranges:: less { } ( expr1, expr2 )
 - std :: ranges:: less { } ( expr2, expr1 )
 - std :: ranges:: equal_to { } ( expr1, expr2 )
 
Notes
       Contrairement à
       
        
         std::less
        
       
       ,
       
        std::ranges::less
       
       requiert que les six opérateurs de comparaison
       
        <
       
       ,
       
        <=
       
       ,
       
        >
       
       ,
       
        >=
       
       ,
       
        ==
       
       et
       
        !=
       
       soient valides (via la contrainte
       
        
         totally_ordered_with
        
       
       ).
      
Exemple
| 
         Cette section est incomplète
          Raison : aucun exemple  | 
       
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Appliqué à | Comportement publié | Comportement correct | 
|---|---|---|---|
| LWG 3530 | C++20 | les vérifications syntaxiques ont été assouplies lors de la comparaison de pointeurs | seules les exigences sémantiques sont assouplies | 
Voir aussi
| 
         objet fonction implémentant
         
          
           x
           
            <
           
           y
          
         
          (modèle de classe)  |