gpt4 book ai didi

objective-c - ObjC 方法类型编码字符串中的数字是什么?

转载 作者:太空狗 更新时间:2023-10-30 03:18:58 27 4
gpt4 key购买 nike

我在读书苹果的article about Objective-C runtime type encoding strings一些方法在它们的类型字符串中有数字。

v12@0:4@8中的数字代表什么?什么意思?

最佳答案

这看起来像这样的 setter 方法的编码:

- (void) setSomething:(id) anObject

分解:

  • v表示 void 返回类型
  • 12表示参数帧的大小(12 字节)
  • @0意味着在参数框架的字节偏移量 0 处有一个 Objective-C 对象类型(这是每个 Objective-C 方法中的隐式 self 对象)
  • :4意味着在字节偏移量 4 处有一个选择器(这是每个方法中的隐式 _cmd,它是用于调用该方法的选择器)。
  • @8意味着在字节偏移量 8 处还有另一个 Objective-C 对象类型。

关于objective-c - ObjC 方法类型编码字符串中的数字是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11491947/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com