Каков обычный способ создания & исключений дескрипторов в C++?Сколько классов для исключений
class CannotRead : public runtime_exception { ... }
class CannotParse : public runtime_exception { ... }
...
throw CannotRead();
...
или
...
throw runtime_error("cannot read");
...
Что идиоматических способ сделать это в C++?
Было бы полезно использовать ссылки на статьи, сравнивающие оба подхода.
Благодаря
Использование явных классов исключений означает, что вы можете иметь более явную обработку ошибок. Если все, что вы получаете, это общий «runtime_error», вы действительно не можете обрабатывать определенные исключения таким образом, чтобы это лучше было лучше. –
Просто используйте 'std :: runtime_exception' и дайте ему соответствующее сообщение об ошибке. Я бы не стал создавать лишнее исключение для каждого случая. –
Я рекомендую: Нет, кроме стандартных исключений - Другими словами, как можно меньше. (также выводятся из std :: exception) –