новое для быстрого я не понимаю, как обрабатывать ошибки. Я понял, используя охрану, бросаю, делаю и пробую свои методы.Обработка ошибок на родных методах swift
Но как я могу обрабатывать ошибки из яблока нативных методов, как:
self.displayContent?.addAttribute(NSFontAttributeName, value: UIFont.fontMainFeedContentFont(), range: NSRange.init(location: 0, length: self.displayContent!.length))
, потому что это может привести к сбою, скажем, диапазон не хорошо, я знаю, что это приведет к краху, но когда я окружать этот код сделай try catch Xcode сообщает мне, что в выражении «try» не происходит никаких вызовов функций броска. Я понимаю, что addAttribute не обрабатывает ошибку throw.
Мой вопрос: как я могу справиться с крахом этого метода?
Благодаря
Вы не! Сбой - это нечто совершенно иное, чем исключение, которое вы «бросаете». Авария, которую вы не можете и не должна улавливать - авария всегда указывает на ошибку, которую вы, как разработчик представил. Например, ваша работа заключается в том, чтобы убедиться, что диапазоны верны. – luk2302
да, конечно, 1-й, я не лучший из тех, кто когда-либо был, второй я не несу ответственности за данные, и я не доверяю им, 3-го я бы хотел понять. В Objc я могу использовать попытку catch, разве это невозможно в быстрой? – user2206906
Вы не можете сравнить http://stackoverflow.com/questions/38737880/uncaught-error-exception-handling-in-swift. –