Swift - 断言
2022-04-11 本文已影响0人
aven_kang
assert
func testsss(_ v1:Int,_ v2:Int) -> Int {
assert(v2 != 0, "出书不能为零")
return v1/v2
}
这个主要是用在测试阶段,主要是用在测试阶段,符合条件,强制性抛出错误
release模式下,是不会执行assert
fatalError
如果遇到严重问题,希望结束程序运行时,可以直接使用fatalError函数抛出错误(这是无法通过do-catch捕捉的错误)
使用了fatalError函数,就不需要写return
func test(_ num:Int) -> Int {
if num >= 0 {
return 1
}
fatalError("num不能小于0")
}
class Animal {
required init(){}
}
class Cat : Animal {
required init() {
fatalError("don't call Animal.init")
}
init(age:Int) {
}
}