【发布时间】:2012-07-17 17:06:35
【问题描述】:
Is 是对我之前的问题的跟进: What are the digits in an ObjC method type encoding string?
说有编码:
v24@0:4:8@12B16@20
这些数字是如何计算的? B 是一个字符,所以它应该只占用 1 个字节(而不是 4 个字节)。它与“对齐”有关吗? void的大小是多少?
按以下方式计算数字是否正确?在每个项目上询问 sizeof 并将结果四舍五入为 4 的倍数?第一个数字变成所有其他数字的总和?
【问题讨论】:
-
您可能想在<objc/runtime/objc-typeencoding.m> 中闲逛。
-
有趣。但这只是为了阅读代码(而不是为了生成代码),对吧?或者您可能打算展示如何使用代码...谢谢!
-
是的,但它可以让您深入了解它们是如何组合在一起的。
标签: objective-c objective-c-runtime