0
这是我的自定义NSLog。使用##时的Xcode编译器错误__ VA_ARGS__
#define NSLog(fmt, ...) printf("%s,%d\n %s\n\n", __PRETTY_FUNCTION__, __LINE__, [NSString stringWithFormat:fmt, ##__VA_ARGS__].UTF8String)
该日志在另一个项目上工作良好,但在当前项目中编译时发生了4错误。如果使用__VA_ARGS__
,如#define NSLog(...) NSLog(__VA_ARGS__)
,它将编译成功。我认为这可能是由Building Setting
造成的。
这是任何人有任何想法,以帮助我解决这个问题。
覆写'NSLog'都必须始终包含后框架(系统)的头,否则会污染的汇编头构架。有些框架是用C语言编写的,'[NSString stringWithFormat]'不会在那里工作。这解释了错误信息。 – Sulthan
谢谢,学到很多东西! – ovo