我想爲一些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