Oli*_*ver 4 performance objective-c class-method
为了整洁和可重用性,我正在考虑在一个类中放入一堆实用程序方法.该类不需要任何自己的属性,因此我将方法定义为类方法; 我认为没有真正需要让这个类的实例浮动...
......还是在那儿?效率有差异吗?(一个引人注目的?)或者调用类方法的行为方式与调用类的一部分相同吗?
dandan78一般有正确的答案.最好自己测量代码.事实上,对于这个问题,你应该只是按照你想要的方式实现它,然后测量,只有当它显着减慢你的应用程序时才改变它.
Gavin也是正确的,C函数比类或实例方法更有效.但同样,除非您在紧密循环中调用这些方法数百万次,否则方法与C函数的开销可能对您的应用程序无关紧要.
但是为了回答问题,类方法和实例方法之间基本没有区别.在Objective-C中,类实际上是对象本身,向它们发送消息与向实例对象发送消息完全相同.每个类基本上都有一个单例对象,可以调用类方法.