什么是NSInvocation
?何时以及如何使用它?
答案 0 :(得分:2)
NSInvocation是邮件发送的具体信息。换句话说,它是一个代表发送消息的对象。
假设您的类Foo有一个名为 - [Foo foo]的方法,以及这样的方法:
-(void)doSomething {
NSInvocation *inv = [NSInvocation invocationWithMethodSignature: [self methodSignatureForSelector: @selector(foo)]];
[inv setTarget: self];
[inv invoke];
}
然后说[self foo]在功能上与说[self doSomething]相同。
你为什么要这样做? CubePuzzle示例应用提供了一个想法。另一个可能是安排将来发送的消息发送,例如由NSTimer触发。