У меня есть гипотетический вопрос о последствиях эффективности использования обработки исключений в ситуациях, когда исключения не генерируются.
Сначала взгляните на этот C #:
int simpleSimon, cautiousCarol, dangerousDave;
try
{
simpleSimon = int.Parse("fail");
}
catch
{
simpleSimon = 1;
}
try
{
cautiousCarol = int.Parse("1");
}
catch
{
cautiousCarol = 1;
}
dangerousDave = int.Parse("1");
Я уверен, что код Дейва будет самым быстрым / эффективным; в то время как Саймон понесет большой штраф за выброс исключения.
А как насчет Кэрол? Если она не выбрасывает исключений, налагает ли она штраф? Если да, то какого и какого размера? (Снижение производительности, дополнительное использование памяти или что-то еще?)