Я хочу создать класс-оболочку для некоторых методов Runtime Objective-C для более простого тестирования (stubbing и т. Д.), И я хотел бы знать, как я обрабатываю передачу переменные аргументы метода Objective-C для функции C.Передача списка аргументов переменных из Objective-C метода в C функции
Например, я хочу, чтобы обернуть функцию C со следующей функцией подписи:
id objc_msgSend(id theReceiver, SEL theSelector, ...)
Я понимаю, что я могу использовать «...» оператор для метода Objective-C, но как я могу передать это функции С?
- (id)msgSend:(id)theReceiver selector:(SEL)theSelector, ...
{
return objc_msgSend(theReceiver, theSelector, ...) // <-- how to pass variable arguments?
}
Дубликат спрашивает о способе передачи метода в список переменных аргументов, но ответы также применяются к этому вопросу. – rmaddy
Хотя этот вопрос «похож» на другой вопрос, я не согласен, что это «дубликат». – 5StringRyan