В чем разница между Swift 2.0 do-try-catch и обычными исключениями Java / C # / C ++
Похоже, что Swift 2.0 изменился с традиционных соглашений ObjC (возвращение NSError) и Swift 1.X (необязательные параметры Success / Failure) обработки ошибок во время выполнения на нечто, что очень похоже на обработку исключений в таких языках, как Java / C # / C ++ / и т. Д. ,
Apple традиционноподчеркнуто использованиеNSError
вместо того, чтобы бросатьNSException for runtime errors
(против ошибок программиста), какNSException
разматывание стека может привести к утечкам памяти при настройках компилятора ObjC по умолчанию.
Однако теперь они разработали нечто, очень похожее на традиционные исключения. Мой вопрос:
Есть ли реальные различия между обработкой ошибок Swift 2.0 и традиционной обработкой исключений, кроменоменклатура (ошибка против исключения) исинтаксис (do-catch, вместо try-catch, попробуйте использовать перед вызовом метода и т. д.).