4

我意识到很多人有时会NS_INLINE在他们的代码中使用函数。我很好奇他们如何知道何时使用它以及为什么使用它。

我读过INLINE函数的指令比objective-C函数少。我在这方面有点迷茫,因为我对 C 不太了解。

我见过的一些例子是:

NS_INLINE id NilToEmptyString(id obj)
{
    return obj ? : @"";
}

NS_INLINE BOOL isRunningTests(void)

我想在一些特定的地方使用它。例如。我需要得到所有的assets画廊,然后检查他们是否有locationdate。我想做那些功能checkLocationcheckDate功能inline

有些用户有5000张图片,用iPhone 4s时间增加到5分钟,太多了。我想重构代码,我读到有时inline函数不是一个坏方法。

4

1 回答 1

2

NS_INLINE__attribute__((always_inline))编译器指令的宏,比普通inline关键字强。仅当您非常确定内联将导致更快的代码而没有不必要的可执行膨胀时才使用它。

于 2015-01-22T22:32:17.910 回答