Я пытаюсь использовать Swift 2.0 try-catch.swift может уловить фатальную ошибку?
Первоначально я имел следующий код
override func viewDidLoad()
{
var obj : Object?;
Hi(obj);
}
Но procdues ошибку
func Hi(open : Open?) -> Open?
{
open!.Hi(); <-- here is error point. Fatal error !
print("OK");
return open;
}
Поэтому я изменил код в viewDidLoad() для:
override func viewDidLoad()
{
try
{
var obj : Object?;
Hi(obj);
}
catch
{
print("bug !!!"); <- I want to this !!!
}
}
Но это делает не работа !!!
Я думаю, что попытка try switch отличается от C, C#.
Как я могу уловить фатальную ошибку?
Может ли следующее быть правильным быстрым способом?
func Hi(open : Open?) -> Open?
{
if let op = open
{
op.Hi();
print("OK");
return open;
}
else
{
return nil;
}
}
Просто прочитайте все это: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ErrorHandling.html –