Несколько причин, по которым разработчики игр могут не любить исключения:
- Невидимость в исходном коде. 5 При взгляде на блок кода, включая функции, которые могут или не могут выбрасывать исключения, невозможно увидеть, какие исключения и откуда могут быть выброшены. 5 Это значит, что даже тщательный осмотр кода не выявляет потенциальные ошибки. 5
- Создание слишком многих возможных точек выхода из функции. 5 Чтобы написать правильный код, нужно думать о каждом возможном пути через функцию. 5 Каждый раз, когда вызывается функция, которая может выбросить исключение и его не ловят на месте, создаются возможности для неожиданных ошибок. 5
- Проблемы с передачей исключений из одного модуля в другой. 5 Это возможно, только если модули построены с помощью одного компилятора и с одинаковыми настройками. 5
Однако стоит отметить, что у исключений есть и преимущества: например, код становится более самоочевидным, так как только функции, которые действительно что-то возвращают, возвращают значение, а «действенные» функции могут быть пустыми. 4