首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
iOS
Samcooke
创建于2021-06-30
订阅专栏
学习iOS
暂无订阅
共26篇文章
创建于2021-06-30
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Category
category编译之后的底层结构是struct category_t,里面存储着分类的对象方法、类方法、属性、协议信息。 1.通过Runtime加载某个类的所有Category数据。 2.把所有Category的方法、属性、协议数据,合并到一个大数组中,后面参与编译的Cate…
全局变量、static、extern
1. 定义 学习过Java 或者 C 语言的朋友应该很清楚static关键字吧?在某个类中声明一个static 静态变量, 其他类中想使用它或者修改它不用new 这个对象 ,直接使用它的类名方可直接拿到这个静态变量的对象,遍可以在其他类中任意修改这个变量的数值。它是存于全局变量…
@property、@synthesize和@dynamic
完成属性定义后,编译器会自动编写访问这些属性所需的方法,此过程叫做“自动合成”(autosynthesis)。需要强调的是,这个过程由编译 器在编译期执行,所以编辑器里看不到这些“合成方法”(synthesized method)的源代码。除了生成方法代码 getter、set…
KVO
KVO的全称是“Key-Value Observing”,俗称“健值监听”,可以用于监听某个对象属性值的改变,本质就是增加一个观察者,属性值改变的时候调用方法,告诉观察者。 这个子类复写了setAge实现,setAage实现调用了Fondation框架的 _NSSetXXVal…
isa指针
stu对象不保存对象方法,通过isa指针找到class对象,找到对象方法。 为啥不直接[MJStudent studentInstanceMethod]; ? 语法设计问题,这样不能体现面对对象思想. 生成C/C++代码,看上面这部分代码的本质。有NSLog会报错,因为是Fou…
对象的本质.md
1. 将Objective-C转换为C\C++代码。 把 main.m 文件转换为 C\C++代码。用编译器llvm前端转换。 但是以上命令,没有考虑到平台和架构。不同平台转换的代码是不一样的。 以下是转换成iOS平台的arm64架构上支持的C\C++. 2. NSObject…