(1) fatal error发生时,defer是不会执行的
(2) catch不到 fatal error
//自定义的fatal error
func case1_MyFatalError(){
defer {
print("defer here") //不会执行
}
do {
try _throwsMyFatalError()//产生fatal error
} catch let err {
print("in MyFatalError catch section \(err)") //这一行进不了
}
}
func _throwsMyFatalError() throws {
fatalError("my fatal error here!")
}