Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
liberalisman committed Jul 26, 2018
1 parent f060921 commit a3b9479
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 1 deletion.
5 changes: 5 additions & 0 deletions Runtime/25.第二十五题的副本 3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## 25.`Obj-c`对象、类的本质是通过什么数据结构实现的?

结构体。

譬如一个最常见的 `Nsobject` 对象。将其编译为 `C++` 代码后,实际上就是一个 `Nsobject_Impl` 结构体。
5 changes: 5 additions & 0 deletions Runtime/25.第二十五题的副本 4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## 25.`Obj-c`对象、类的本质是通过什么数据结构实现的?

结构体。

譬如一个最常见的 `Nsobject` 对象。将其编译为 `C++` 代码后,实际上就是一个 `Nsobject_Impl` 结构体。
5 changes: 5 additions & 0 deletions Runtime/25.第二十五题的副本.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## 25.`Obj-c`对象、类的本质是通过什么数据结构实现的?

结构体。

譬如一个最常见的 `Nsobject` 对象。将其编译为 `C++` 代码后,实际上就是一个 `Nsobject_Impl` 结构体。
6 changes: 5 additions & 1 deletion Runtime/4.第四题.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,8 @@ static struct _catrgory_t _OBJC_$_CATEGORY_NSObject_$_Tools __attribute__ ((used
```
`Category` 在刚刚编译完的时候,和原来的类是分开的,只有在程序运行起来后,通过 `Runtime` ,`Category` 和原来的类才会合并到一起。
`Category` 在刚刚编译完的时候,和原来的类是分开的,只有在程序运行起来后,通过 `Runtime` ,`Category` 和原来的类才会合并到一起。
`mememove`,`memcpy`:这俩方法是位移、复制,简单理解就是原有的方法移动到最后,根根新开辟的控件,把前面的位置留给分类,然后分类中的方法,按照倒序依次插入,可以得出的结论就就是,越晚参与编译的分类,里面的方法才是生效的那个。

0 comments on commit a3b9479

Please sign in to comment.