Я узнал о том, как писать безопасный код исключения. Большинство методов, предлагаемых как управляемая память RAI или мьютексы, полезны даже тогда, когда мы не используем исключения, поскольку программисту не нужно беспокоиться об управлении ресурсами вручную.
Но зачем нам нужны исключения? Если мы не получим нужные нам ресурсы, мы не сможем продолжить работу, и процесс все равно прекратится. Тогда операционная система может беспокоиться о выпуске ресурсов. Итак, что мне не хватает? что не так с моим аргументом?
Вы считаете само собой разумеющимся, что программа не может двигаться дальше, когда ей не хватает ресурсов.
Если позволить программе просто умереть, это вариант, тогда вам могут не понадобиться исключения. Опять же, вы можете извлечь из них выгоду даже в таком случае - бросая исключение, чтобы вещи были очищены, поэтому (например) файлы, которые вы написали, будут очищены, чтобы вы не потеряли данные, которые все еще находятся в буферах.
В еще нескольких случаях просто возврат к ОС не является вариантом. В нескольких случаях вы хотели бы использовать ресурс, если это возможно, но вам все равно нужно продолжать обработку, даже если это не так.