gpt4 book ai didi

objective-c - xcode 中预期出现 ')' 错误

转载 作者:行者123 更新时间:2023-11-30 10:19:06 24 4
gpt4 key购买 nike

我创建了一个 CLogger Objective-C 类并定义了以下宏:

#define CLogError(fmt, ...) [[CLogger defaultLogger] log:@"Error" format:(LOG_FORMAT fmt), [[NSString stringWithUTF8String:__FILE__] lastPathComponent], LINE, PRETTY_FUNCTION, ##__VA_ARGS__]

我能够访问 Objective-C 文件中的 CLogError 并调用它。但上述宏在 swift 文件中无法访问。所以我创建了一个静态内联方法作为包装器,以便 swift 间接调用宏。但是当我将参数传递给宏时,我在 xcode 中收到 expected ')' 错误。如果我在宏中硬编码字符串,同样有效。我在这里做错了什么吗?

static inline void logEvent(NSString* msg)
{
CLogError("Invalid Json");// it works
CLogError(@"nsstring");// it works

CLogError(msg);// didn't work
}

最佳答案

#define CLogError(fmt, ...) [[CLogger defaultLogger] log:@"Error" format:(LOG_FORMAT fmt), [[NSString stringWithUTF8String:__FILE__] lastPathComponent], LINE, PRETTY_FUNCTION, ##__VA_ARGS__]

(LOG_FORMAT 看起来不应该在那里。我想你只是想要:

#define CLogError(fmt, ...) [[CLogger defaultLogger] log:@"Error" format:(fmt), [[NSString stringWithUTF8String:__FILE__] lastPathComponent], LINE, PRETTY_FUNCTION, ##__VA_ARGS__]

关于objective-c - xcode 中预期出现 ')' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28313248/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com