这几天我一直在想是否NSInvocation
需要NSMethodSignature
. 假设我们想编写自己的 NSInvocation,我的要求是这样的:
- 我需要一个选择器
SEL
- 调用选择器的目标对象
- 参数数组
然后我会IMP
从目标和 中取出SEL
,并传递argument
as 参数。
所以,我的问题是,为什么我们需要一个NSMethodSignature
来构造和使用一个NSInvocation
?
注意:我知道只有 aSEL
和一个目标,我们没有这个方法的参数和返回类型,但是我们为什么要关心 args 和返回的类型呢?