我注意到 Swift 类在 Objective-C 运行时被重命名。所以如果我有一个名为 swift 的课程ViewController
我的应用程序的名称是TestRuntime
当我表演时object_getClass(self)
, self being ViewController
,我会得到这个:_TtC11TestRuntime14ViewController
。我注意到这种模式或格式:_TtC$$AppName$$ClassName
, $是一个随机数。我无法弄清楚这些数字是从哪里来的。如果有人能够阐明在运行时如何快速命名其类,那将真正帮助我。
它们不是随机的。它们是以下值的长度。这类似于常见的 C++ 名称修饰,并且支持其中可能包含相当任意字符的标识符,而不需要一些新的分隔符。它还可以使它们更容易解析,尤其是在 C 语言中。
在这个特殊情况下,它是_TtC
然后是“十一个字符的模块名称”,然后是模块名称,然后是“十四个字符的类名称”和类名称。我假设C
是阶级。不确定Tt
(也许是“类型”)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)