我想为一些Objective-C运行时方法创建一个包装类,以便于测试(存根等),并且我想知道如何处理传递从Objective-C方法到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?
}
重复询问有关传递可变参数列表的方法的方法,但答案也适用于此问题。 – rmaddy
虽然这个问题与其他问题“相似”,但我不同意它是“重复”。 – 5StringRyan