assert和precondition是做什么的?
从字面意思即可看出,assert是断言(必须成立),precondition是先决条件,是满足条件才能继续往下。两者的区别就是assert只在debug环境下生效,而precondition是debug和release都生效。
condition是Bool,true值则不成立,false则成立程序挂掉。
assertionFailure和preconditionFailure都是直接挂掉,不用加判断条件。fatalError是致命错误,程序挂掉。