我正在尝试定义这样的宏:
#define LogMethod(uuid) [LogManager logString:[NSString stringWithFormat:@"%s", __PRETTY_FUNCTION__] uuid:(uuid)];
并这样称呼它:
NSString *stringUUID = [[NSUUID UUID] UUIDString];
LogMethod(stringUUID)
但是我得到一个编译器错误
选择器'logString:stringUUID:'的未知类方法
看来它是stringUUID
作为字符串而不是对象的字符串传递的。是否可以像这样将对象传递给C宏?
预处理器对此uuid:uuid
位感到困惑,并将其扩展到stringUUID:stringUUID
。
尝试:
#define LogMethod(x) [LogManager logString:[NSString stringWithFormat:@"%s", __PRETTY_FUNCTION__] uuid:(x)];
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句