Xcode: 停止编译代码行/函数
Xcode: stop lines of code / functions from compiling
我在几个项目中有公共文件,我需要停止为项目A编译一些行和函数,同时为项目B编译。
我知道我可以使用预处理器。但这对我来说不方便。有什么方法可以阻止代码行在如下条件下进行编译吗?
#if PhotosModuleSettings.type == .documents
... do not commpile
#endif
您将需要使用预处理器宏。
为您的项目添加配置,并在预处理器宏中使用它。
您可以根据构建配置在目标的预处理器宏部分中设置这些配置的值。
这是与同一概念相关的详细 [=10=]
使用预处理器有什么不方便的?您可以在每个目标的构建设置中指定预处理器宏,也可以使用 .xcconfig 文件来指定它们。
不过,还有另一种简单的方法。将要有条件地编译到单独文件中的行和函数分开。也许通过使用 Swift 扩展或子类化或只是单独的全局函数等。无论如何。然后只需选择您希望将这些文件添加为成员的目标 and/or 个项目。
不过,根据您重构代码以进行此类文件分离的愿望,预处理器宏可能是更好的选择。
我在几个项目中有公共文件,我需要停止为项目A编译一些行和函数,同时为项目B编译。
我知道我可以使用预处理器。但这对我来说不方便。有什么方法可以阻止代码行在如下条件下进行编译吗?
#if PhotosModuleSettings.type == .documents
... do not commpile
#endif
您将需要使用预处理器宏。
为您的项目添加配置,并在预处理器宏中使用它。
您可以根据构建配置在目标的预处理器宏部分中设置这些配置的值。
这是与同一概念相关的详细 [=10=]
使用预处理器有什么不方便的?您可以在每个目标的构建设置中指定预处理器宏,也可以使用 .xcconfig 文件来指定它们。
不过,还有另一种简单的方法。将要有条件地编译到单独文件中的行和函数分开。也许通过使用 Swift 扩展或子类化或只是单独的全局函数等。无论如何。然后只需选择您希望将这些文件添加为成员的目标 and/or 个项目。
不过,根据您重构代码以进行此类文件分离的愿望,预处理器宏可能是更好的选择。