Objective c ObjC方法类型编码字符串中的数字是什么?
我在看书 苹果的 有些方法的类型字符串中有数字Objective c ObjC方法类型编码字符串中的数字是什么?,objective-c,objective-c-runtime,method-signature,Objective C,Objective C Runtime,Method Signature,我在看书 苹果的 有些方法的类型字符串中有数字 v12@0:4@8mean?这看起来像是setter方法的编码,如下所示: - (void) setSomething:(id) anObject 要分解它: v表示无效退货类型 12表示参数帧的大小(12字节) @0表示在参数帧的字节偏移量0处有一个Objective-C对象类型(这是每个Objective-C方法中的隐式self对象) :4表示字节偏移量4处有一个选择器(这是每个方法中的隐式\u cmd,它是用于调用该方法的选择器) @8表
v12@0:4@8
mean?这看起来像是setter方法的编码,如下所示:
- (void) setSomething:(id) anObject
要分解它:
表示无效退货类型v
表示参数帧的大小(12字节)12
表示在参数帧的字节偏移量0处有一个Objective-C对象类型(这是每个Objective-C方法中的隐式@0
对象)self
表示字节偏移量4处有一个选择器(这是每个方法中的隐式:4
,它是用于调用该方法的选择器)\u cmd
表示字节偏移量8处存在另一个Objective-C对象类型@8