目标C中指向BOOL的指针

Rud*_*vič 2 pointers objective-c

码:

NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];
BOOL initial = YES;
[invocation setArgument:&initial atIndex:2];
Run Code Online (Sandbox Code Playgroud)

题:

是否可以YESsetArgument:atIndex:不创建临时变量的情况下传递给它?

我在想,也许有一种我不知道的语言结构和/或运行时中的常量,这是YES我可以指出的.

谢谢!

cob*_*bal 6

不,没有任何干净,可靠的方式.

NSInvocation将取消引用您发送它的任何指针,并复制方法签名指定的长度数据.您需要在某处获取该信息,以便获取地址,并且拥有本地变量是最佳方法.