如何获得方法的arity?

air*_*tyh 1 introspection objective-c

例如,在Javascript中,您可以通过简单地获取arity(函数应该采用的参数数量)func.length.如何获取Objective-C中方法的这些信息?

Ale*_*yne 7

NSMethodSignature 各种反射信息都很棒.

SEL selector = @selector(foo:);
NSMethodSignature *sig = [someObj methodSignatureForSelector:selector]
int argCount = [sig numberOfArguments];
Run Code Online (Sandbox Code Playgroud)