2017-09-02 91 views
1

假设我还没有NSString *(即只选择要写入哪种类型的字符串),是否有任何理由使用NSClassFromString而不是objc_getClass?我的假设是NSClassFromString总之调用objc_getClass,所以使用运行时函数稍微高效一些。NSClassFromString与objc_getClass?

回答

1

NSClassFromString是比objc_getClass更高级别的功能,如您所说,由于需要NSString这一事实,因此更方便。所以objc_getClass应该没问题。这就是说,如果性能是一个主要问题,Objective-C运行时hackery通常不是实现它的最好方法。

0

在这种情况下,您最好为自己的可用性/可读性进行优化,并使用更高级别NSClassFromString。较低级别的API使用起来会比较尴尬(尤其是Swift),并且在您用Objective-C/Swift编写的所有其他应用程序代码中看起来不合适。

我不会担心效率太高,除非你发现你有性能问题,并且可以追溯到使用此功能(非常不可能)。

相关问题