我在 Google Analytics 的实施说明中遇到了这个:
guard let gai = GAI.sharedInstance() else {
assert(false, "Google Analytics not configured correctly")
}
我从没想过可以在 else 子句中进行断言,而无需返回。这对我来说没有意义,因为断言只会在测试方案中进行评估。那么,为什么编译器不警告它不返回(在发布版本的情况下)。
编辑:这是在函数内application(_:didFinishLaunchingWithOptions) -> Bool
编辑2:我在此找到的附加信息可以回答它:
不幸的是,一旦您进行发布构建,这就会中断,因为在发布配置中删除了断言,并且保护块必须结束当前范围的执行。