La librairie standard c++ utilise les exceptions, mais dans certains cas limités, comme une allocation ratée.
Elle l'utilise aussi dans vector::at (et d'autres du même genre comme string::at) qui est l'équivalent de l'accès indicé (celui avec les accolades) mais avec vérification du domaine. Et il y a les fonctions de conversion genre std::stoi qui peuvent renvoyer des exceptions. Il y a aussi des fonctions liées au système comme std::thead::detach. Et puis, il y a quasiment toutes les fonctions de std::filesystem qui ont deux versions : une avec exception et l'autre avec un code d'erreur.
Bref, affirmer que la bibliothèque standard utilise les exceptions dans des cas limités est erroné. Elle utilise les exceptions pour les cas exceptionnels, ce qui est la raison d'être des exceptions.
[^] # Re: C++ et exceptions
Posté par rewind (Mastodon) . En réponse au journal Gestion de l'erreur - C++ - std::optional. Évalué à 5.
Elle l'utilise aussi dans
vector::at(et d'autres du même genre commestring::at) qui est l'équivalent de l'accès indicé (celui avec les accolades) mais avec vérification du domaine. Et il y a les fonctions de conversion genrestd::stoiqui peuvent renvoyer des exceptions. Il y a aussi des fonctions liées au système commestd::thead::detach. Et puis, il y a quasiment toutes les fonctions de std::filesystem qui ont deux versions : une avec exception et l'autre avec un code d'erreur.Bref, affirmer que la bibliothèque standard utilise les exceptions dans des cas limités est erroné. Elle utilise les exceptions pour les cas exceptionnels, ce qui est la raison d'être des exceptions.