Ios 快速速度vs空拉直

Ios 快速速度vs空拉直,ios,swift,drawrect,Ios,Swift,Drawrect,所以我在读Mike Ash关于Swift speed的文章时遇到了这样一个问题:如果我们有一个空函数,那么Swift将不会进行方法调用 func test() {} 然后,编译器基本上不会调用对test()的调用 如果我没记错的话,苹果建议不要留下一个空的drawRect:方法,因为它可能会影响性能 现在我的问题是,如果编译器从未调用过空函数,那么为什么要针对空drawRect: 我只是好奇。谢谢drawRect的问题不在于函数调用。您不能只调用drawRect,要为drawRect设置正确的

所以我在读Mike Ash关于Swift speed的文章时遇到了这样一个问题:如果我们有一个空函数,那么Swift将不会进行方法调用

func test() {}
然后,编译器基本上不会调用对test()的调用

如果我没记错的话,苹果建议不要留下一个空的drawRect:方法,因为它可能会影响性能

现在我的问题是,如果编译器从未调用过空函数,那么为什么要针对空drawRect:
我只是好奇。谢谢

drawRect的问题不在于函数调用。您不能只调用drawRect,要为drawRect设置正确的上下文,需要进行大量的设置。执行该设置的代码可以检查是否没有drawRect方法并避免整个设置,但它无法检测到drawRect什么都不做