我想为一些 Objective-C 运行时方法创建一个包装类,以便于测试(存根等),并且我想知道如何处理从 Objective-C 方法到 C 函数的变量参数的传递。
例如,我想用以下函数签名包装一个 C 函数:
id objc_msgSend(id theReceiver, SEL theSelector, ...)
我知道我可以将“...”运算符用于 Objective-C 方法,但是如何将其传递给 C 函数?
- (id)msgSend:(id)theReceiver selector:(SEL)theSelector, ...
{
return objc_msgSend(theReceiver, theSelector, ...) // <-- how to pass variable arguments?
}