cocoa Class、id、以及NSObject 的关系--笔录

cocoa Class、id、以及NSObject 的关系--笔录,第1张

概述注: 1.在mac终端可以用find命令可找到头文件,如 find / -name "objc.h" 1.Class的定义(objc.h): <pre name="code" class="objc">typedef struct objc_class *Class; 2.id 的定义(objc.h): typedef struct objc_object *id;struct objc_obj

注:

1.在mac终端可以用find命令可找到头文件,如 find / -name "objc.h"


1.Class的定义(objc.h):
<pre name="code" >typedef struct objc_class *Class;


 2.ID 的定义(objc.h):     
typedef struct objc_object *ID;struct objc_object {    Class isa;}


3.NSObject的定义(NSObject.h):
@interface NSObject <NSObject> {    Class isa;}//...//以及包含一些列的方法
由此可以见:ID 是一个指向NSObject的类型的指针
4. objc_class结构体的定义(objc.h):

struct objc_class {    struct objc_class * isa;    struct objc_class * super_class;  /*父类*/    const char *name;                 /*类名字*/    long version;                   /*版本信息*/    long info;                        /*类信息*/    long instance_size;               /*实例大小*/    struct objc_ivar_List *ivars;     /*实例参数链表*/    struct objc_method_List **methodLists;  /*方法链表*/    struct objc_cache *cache;               /*方法缓存*/    struct objc_protocol_List *protocols;   /*协议链表*/};



参考文章:

http://blog.csdn.net/kesalin/article/details/7211228

http://blog.csdn.net/kesalin/article/details/6689226

总结

以上是内存溢出为你收集整理的cocoa Class、id、以及NSObject 的关系--笔录全部内容,希望文章能够帮你解决cocoa Class、id、以及NSObject 的关系--笔录所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1052370.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存