自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

转载 Runtime(六)

Objective-C Runtime 运行时之六:拾遗   前面几篇基本介绍了runtime中的大部分功能,包括对类与对象、成员变量与属性、方法与消息、分类与协议的处理。runtime大部分的功能都是围绕这几点来实现的。本章的内容并不算重点,主要针对前文中对Objective-C Runtime Reference内容遗漏的地方做些补充。当然这并不能包含所有的内容。runtime还有许多

2016-03-27 06:47:10 232

转载 Runtime(五)

Objective-C Runtime 运行时之五:协议与分类   Objective-C中的分类允许我们通过给一个类添加方法来扩充它(但是通过category不能添加新的实例变量),并且我们不需要访问类中的代码就可以做到。Objective-C中的协议是普遍存在的接口定义方式,即在一个类中通过@protocol定义接口,在另外类中实现接口,这种接口定义方式也成为“delegation”模

2016-03-27 06:46:18 193

转载 runtim(四)

Objective-C Runtime 运行时之四:Method Swizzling理解Method Swizzling是学习runtime机制的一个很好的机会。在此不多做整理,仅翻译由Mattt Thompson发表于nshipster的Method Swizzling一文。Method Swizzling是改变一个selector的实际实现的技术。通过这一技术,我们可以在运行时通过

2016-03-27 06:44:27 203

转载 runtime(三)

Objective-C Runtime 运行时之三:方法与消息  前面我们讨论了Runtime中对类和对象的处理,及对成员变量与属性的处理。这一章,我们就要开始讨论Runtime中最有意思的一部分:消息处理机制。我们将详细讨论消息的发送及消息的转发。不过在讨论消息之前,我们先来了解一下与方法相关的一些内容。基础数据类型SELSEL又叫选择器,是表示一个方法的selector的指针,

2016-03-27 06:43:08 180

转载 runtime(二)

Objective-C Runtime 运行时之二:成员变量与属性类型编码(Type Encoding)作为对Runtime的补充,编译器将每个方法的返回值和参数类型编码为一个字符串,并将其与方法的selector关联在一起。这种编码方案在其它情况下也是非常有用的,因此我们可以使用@encode编译器指令来获取它。当给定一个类型时,@encode返回这个类型的字符串编码。这些类型可

2016-03-24 22:08:00 258

转载 runtime(一)

Objective-C Runtime 运行时之一:类与对象Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统来执行编译的代码。对于Objective

2016-03-24 22:06:08 184

原创 结构体加typedef与不加typedef的使用区别

1.加了typedef使用例子如下:#include #include typedef struct person{    int age;    int name;}stu3;int main(){stu3 stu4;stu4.name=7;    printf("%ld\n",stu4.name);    return 0;}

2016-03-19 21:18:21 2145 1

转载 结构体定义:struct与typedef struct 用法详解和用法小结

一、typedef的用法在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像: typedef int INT; typedef int ARRAY[10]; typedef (int*) pINT; typedef可以增强程序的可读性,以及标识符的灵活性,但它也有“非直观性”等缺点。 二、#define的

2016-03-19 21:08:27 346

原创 单链表倒置

单链表倒置,想要倒置应先整理一下倒置的思路,应先知道链表分为几种:1.单链表:单链表一个结点只有一个数据域 ,一个指针域(数据域存储数据,指针域存储下一个结点的头指针)2.双向链表:在双向链表中,结点除含有数据域外,还有两个链域,一个存储直接后继结点地址,一般称之为右链域;一个存储直接前驱结点地址,一般称之为左链域。3循环链表链表倒置思路如下:第一,先创建一个链表;创建链表需要先创

2016-03-19 10:08:12 1258

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除