最近修复了一个问题时,我发现了以下代码,并想知道它是否会在生产中崩溃。我无法在模拟器和5s(ios 10.0)中复制任何崩溃。
switch myVar{
case 1 : //some code
case 2 : //some code
default :
#if DEBUG
print("no match")
#endif
}
我的理解是,在发行版中,构建将没有IF调试线,因此默认值将遵循"}"。请澄清。
我相信您甚至无法制作发布。因为在制作释放时,删除了#if DEBUG ... #endif
中的所有线路。
编译器删除行
时#if DEBUG
print("no match")
#endif
只会在default:
中至少需要一个断路语句。
尝试修改您的计划以发布并查看将会发生什么。
上面的代码不会崩溃。撞车事故可能是由于案例1,2中的代码造成的。请在那儿检查。