240 发简信
IP属地:陕西
  • Resize,w 360,h 240
    iOS runtime消息转发之objc_msgSend探究

    引言 消息转发的本质:向对象发送消息,是一个查找方法的过程。在前面我们研究过类,编译成c++本质是一个叫objc_class的struct指针,...

  • Resize,w 360,h 240
    iOS 对象isa指针的底层探索

    引言 众所周知,oc是面向对象编程,最重要的一个概念就是类,最终OC中的类都要编译成c++的,那么OC重的类在c++的底层是怎么呈现的呢?打开#...

  • Resize,w 360,h 240
    iOS OC底层中类的结构探索

    引言 我们都知道,一个类有成员变量、对象方法、类方法,那么它们在底层是如何实现的呢? 前提 要想研究上面内容,首先要知道oc对象在c++层面对应...

  • iOS之底层内存对齐

    引言 内存对齐是内存里面一个很重要的词汇,可是大部分开发者对这个词汇的含义都是一知半解。 输出结果: 结果分析: sizeof:对象类型的内存大...

  • Resize,w 360,h 240
    iOS之OC底层alloc流程

    引言 在实际iOS开发中我,我们经常会调用alloc 方法,然而对于alloc方法的底层实现原理,大部分人并不是很清楚。 一、准备工作 1、探究...

  • iOS之递归算法

    递归是编程语言中一种较为常见的算法,一个函数直接或间接调用自身的一种方法。当调用一次函数可能解决不了当前的问题和需求,需要重复调用,一直到达成目...

  • iOS之const、extern、static用法

    static static分两种情况,修饰局部变量和全局变量。(1)修饰局部变量在整个程序运行的过程中局部变量只初始化一次,只有一份内存,作用域...

  • iOS之const与宏定义的区别

    宏定义的常见用法:定义一段代码抽成宏,或指定字符串抽成宏const(常量):当有字符串常量的时候,苹果推荐我们使用const,苹果经常把常用的字...

  • iOS之id和NSObject *的区别

    1.id在objc.h中定义 从上面可以看出,id的本质是struct objc_object结构体指针,可以指向任何OC对象。注意:这里说的是...