Objecitve-C的重要特性是Runtime(运行时),在Interacting with the Runtime(交互运行)中,运行时函数部分,苹果给出了/usr/lib/libobjc.A.dylib库,这个共享库提供支持动态属性的objective - c语言,通过其接口,可以用于开发 ...
转载自这里。 最近看了一本书 iOS programming Pushing the Limits 亚马逊有中文版 ,最后一章是关于Deep ObjC的,主要内容是ObjC的runtime。虽然之前看过runtime的programming guide,但读之乏味也不知道能用在何处。现在有点小小的理解,觉得别有乾坤,索性把runtime的相关东西给整理一下。 下面就从官方文档开始,看看runtim ...
2013-10-22 23:06 5 1239 推荐指数:
Objecitve-C的重要特性是Runtime(运行时),在Interacting with the Runtime(交互运行)中,运行时函数部分,苹果给出了/usr/lib/libobjc.A.dylib库,这个共享库提供支持动态属性的objective - c语言,通过其接口,可以用于开发 ...
现在网上讲解的objc_class 绝大部分是错的。18年、19年依然很多童鞋写着错误的Runtime文章发到网上,面试的时候基本绝大部分人都说着网上所谓的“正确答案”。 一、错误一: 讲Runloop首先要讲的是objc_class,如图: 然后就开始讲objc_class里 ...
objective-c中,有类别可以在不修改源码的基础上增加方法;近排在看别人的开源代码时,发现还可以动态增加属性。而且是在运行时,太牛B了。 使用运行时库,必须要先引入 objc/runtime.h 可以使用的函数如下: OBJC_EXPORT void ...
objc_msgSend函数 关于Selector,什么 是Selector,Selector就是一个字符串,用来表示一个方法。 在Objective-C中,消息是直到运行的时候才和方法实现绑定的。编译器会把一个消息表达式 ...
objc_setAssociatedObject/objc_getAssociatedObject objc_setAssociatedObject来把一个对象与另外一个对象进行关联。该函数需要四个参数:源对象,关键字,关联的对象和一个关联策略。 关键字是一个 ...
objc_msgSend:用于对objc对象发送消息,执行objc的方法。 objc_msgSendSuper:同上一样,这里是调用objc父类对象的方法。 使用以上函数之前需要对它们做函数转换后,方可使用,以下是这些函数的注释 意思就是:在调用这些函数之前,必须将它们转换 ...
本文转载请注明出处——polobymulberry-博客园 两个函数名称中都有associate,意思是关联,这里的关联表示的是一种 从属关系,即有一个关联者和被关联者,我们说NSArray的对象ar ...
【OC之OBJC2_UNAVAILABLE】 1、What is OBJC2_UNAVAILABLE macro mean? 意即在OBJC2.0中,这些东西将被删除。 ...