Bonjour,
Je me pose des questions sur l'utilisation des classes invalid_argument & domain_error, qu'on peut aussi mixer avec out_of_range.
Quand utiliser une plutôt qu'une autre ?
Un utilisateur me demande l'accès à une variable (par une fonction accesseur) dépassant la taille de mon conteneur : out_of_range ? Ça parait évident mais on peut aussi considérer, étant donné qu'il est sensé connaître la taille maximum de mon conteneur que son argument n'a pas de sens : invalid_argument ? Enfin, notre conteneur est défini pour des éléments indicés de tant à tant, soit : domain_error...
Bref, l'exemple n'est peut être pas probant mais dans ma tête, il y a un peu ambiguïté sur l'utilisations de ces exceptions (même si en théorie, elles sont bien différenciés, en pratique, ca ne me parait passi facile de choisir entre l'une ou l'autre), quelqu'un pourrait-il éclairer ma lanterne en me disant clairement à quoi elles se destinent (avec une description un peu plus développée que :dénichées dans les documentations conventionnelles) ?The class serves as the base class for all exceptions thrown to report a domain error
Partager