带有值类型参数的NSInvocation

时间:2014-11-10 16:01:29

标签: ios objective-c nsinvocation

是否可以将NSInvocation与值类型参数一起使用?

目前我们可以这样做:

[invocation setArgument:&param1 atIndex:2];

但我们希望第一个参数是一个值类型,例如int。

当我查看传递给debbugger中的目标方法的变量时,它是一些垃圾值,如1.367481856920029E + 302 - 这似乎是将对象的地址转换为int。

1 个答案:

答案 0 :(得分:3)

如果我得到你想要的东西,你只想传递一个int作为第一个参数?

这个问题的解决方案应该是:

NSInteger param1 = 2;
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:methodSignature];
[invocation setArgument:&param1 atIndex:2];

如果没有回答您的问题,请添加更多详细信息/代码。