1

我目前有条件工作#import

#ifdef MY_IMPORT_PREFIX
#import "MyFramework/MyHeader.h"
#else
#import "MyHeader.h"
#endif

我在 XCode 项目中定义 MY_IMPORT_PREFIX 的地方如下: XCode 项目中的预处理器宏

但我想尝试将其优化为一行,将 MY_IMPORT_PREFIX 的值(通常是 undef 但可能已定义)连接到我要导入的文件。

我尝试了以下方法无济于事:

#define MY_CONCAT_2(c,d) c ## d
#define MY_CONCAT(a,b) MY_CONCAT_2(a,b)

#import MY_CONCAT(MY_IMPORT_PREFIX, MyHeader.h)

有人愿意挑战吗?

4

1 回答 1

1

如果您只是想缩短您必须编写的内容,也许您可​​以将这些#ifdef...行放在一个单独的头文件中,然后将该文件导入您要MyHeader.h使用条件前缀导入的所有源文件中。

于 2012-10-02T20:06:19.947 回答