我正在尝试配置cocoalumberjack,当我添加ddLogLevelset到LOG_LEVEL_VERBOSEXCode抛出"使用未声明的标识符"错误.这是为什么?怎么避免?

这个问题表明清除DerivedData并重新启动Xcode解决了这种错误.
但是,您不应该在预编译的头文件中包含变量,因为它将包含在每个源文件中,并且前缀文件与普通头文件相比有些复杂.
更好的是使用Constants.h包含以下内容的文件:
extern int ddLogLevel;
Run Code Online (Sandbox Code Playgroud)
并将#import其添加到您的前缀文件中.
然后创建一个Constants.m:
int ddLogLevel =
#ifdef DEBUG
LOG_LEVEL_VERBOSE;
#else
LOG_LEVEL_ERROR;
#endif
Run Code Online (Sandbox Code Playgroud)
这种方式只有一个实例,ddLogLevel如果需要,可以在运行时轻松更改.
有关前缀文件最佳做法的提示,请参阅此问题.
在为Objective-C项目使用Xcode 8.0时,为我解决的问题是改变#import <CocoaLumberjack/CocoaLumberjack.h>了@import CocoaLumberjack;.
| 归档时间: |
|
| 查看次数: |
8252 次 |
| 最近记录: |