objective-c - Objective-C 运行时中的类处理程序回调是什么?
问题描述
Objective-C 运行时中的类处理程序回调是什么?根据文档,
objc_getClass与 objc_lookUpClass的不同之处在于,如果该类未注册,则 objc_getClass 调用类处理程序回调,然后再次检查该类是否已注册。objc_lookUpClass 不调用类处理程序回调。
解决方案
它似乎是运行时的过时功能。在 /usr/include/objc/runtime.h 中,您可以在标记为 的部分中找到以下声明/* Obsolete functions */
:
OBJC_EXPORT void objc_setClassHandler(int (*)(const char *)) OBJC2_UNAVAILABLE;
因此,显然,在 Objective-C 2.0 之前,可以注册一个函数指针来充当类处理程序。我猜参数是类名。它将有机会加载或动态创建命名类。
推荐阅读
- bash - 如何使用shell脚本将html转换为pdf
- python - 使用 tkinter gui 更新数据
- python - 重命名 sqlite3 表列
- sccm - SCCM PXE not getting IP address
- javascript - 为什么我的代码不允许我在 js 中一起添加两个对象属性?
- flutter - How to design custom labels for flutter tabs using box decoration?
- javascript - Reactjs,如何构建特定的 json 以在每月之间添加金额
- excel - 复制并粘贴 activeX 按钮
- android - 为什么 Android 资源命名如此具体?
- mysql - 存储过程不适用于插入数据