我有一个使用C++库提供的功能的Objective-C/C++应用程序。
其中一个C++类包括以下枚举类型:
在Objective-C/C++源文件(*.mm)中使用#include包含上述类声明的头文件将导致编译失败,因为预处理器会将"YES"替换为"(BOOL) 1"(同样地,将"NO"替换为"(BOOL) 0")。有没有一种方法可以修复这个问题而不需要重命名枚举值?
其中一个C++类包括以下枚举类型:
class TheClass
{
public:
[...]
enum TheEnum
{
YES,
NO,
};
[...]
};
在Objective-C/C++源文件(*.mm)中使用#include包含上述类声明的头文件将导致编译失败,因为预处理器会将"YES"替换为"(BOOL) 1"(同样地,将"NO"替换为"(BOOL) 0")。有没有一种方法可以修复这个问题而不需要重命名枚举值?