随笔分类 -  Objective-C

NSRunLoop
摘要:NSRunLoop原理详解——不再有盲点 runloop、自动释放池、线程、GCD NSRunloop简单细说(六)—— 几种循环模式详细解析 阅读全文

posted @ 2020-03-21 00:50 二狗你变了

Block循环引用问题(Objective-c)
摘要:造成循环引用的简单理解是:Block的拥有者在Block作用域内部又引用了自己,因此导致了Block的拥有者永远无法释放内存,就出现了循环引用的内存泄漏 示例代码 再看下面的例子 他们之间的引用关系 Block引用ViewController,ViewController引用networkTool, 阅读全文

posted @ 2019-07-10 10:13 二狗你变了 阅读(273) 评论(0) 推荐(0)

Objective-C runtime 机制
摘要:runtime使用C语言结构体表示对象,用C语言函数表示方法,这些C语言函数和结构体被Runtime封装后,我们就可以在程序中执行创建,检查,修改类和对象和他们的方法 runtime 是 OC底层的一套C语言的API(引入 <objc/runtime.h> 或<objc/message.h>),编译 阅读全文

posted @ 2017-02-18 14:56 二狗你变了 阅读(340) 评论(0) 推荐(0)

nil Nil NULL NSNull 之间的区别
摘要:nil -> Null-pointer to objective- c objectNIL -> Null-pointer to objective- c class 表示对类进行赋空值NULL: A null pointer to anything else, is for C-style mem 阅读全文

posted @ 2017-02-17 18:19 二狗你变了 阅读(273) 评论(0) 推荐(0)

Objective-C语言--self和super关键字解析
摘要:看代码: self是什么,super是什么? 在动态方法中:self代表着”对象”; 在静态方法中:self代表着”类”; 一句话总结就是:self代表着当前方法的调用者; self 和 super 是Objective-C提供的两个保留字。 但有根本区别,self是类的隐藏的参数变量,指向当前调用 阅读全文

posted @ 2017-02-17 17:51 二狗你变了 阅读(1659) 评论(0) 推荐(0)

Objective-C 语言特点/特性
摘要:Objective-C中 1、所有的类都必须继承自NSObject。 2、所有对象都是指针的形式。 3、用self代替this。 4、使用id代替void*。 5、使用nil表示NULL, 6、只支持单继承,不允许多重继承。 7、使用YES/NO表示TRUE/FALSE 8、使用#import代替# 阅读全文

posted @ 2017-02-17 15:37 二狗你变了 阅读(2260) 评论(0) 推荐(0)

iOS 内存管理-copy、 retain、 assign 、readonly 、 readwrite、nonatomic、@property、@synthesize、@dynamic、IB_DESIGNABLE 、 IBInspectable、IBOutletCollection
摘要:浅谈iOS内存管理机制 alloc,retain,copy,release,autorelease 1)@property和@synthesize的使用 @property的用法: 后面跟的都是类实例变量,而不是方法。 编译器在翻译这句话的时候,会自动展开property中说明的实例变量的sette 阅读全文

posted @ 2017-02-17 10:46 二狗你变了 阅读(552) 评论(0) 推荐(0)

空指针和野指针
摘要:空指针:1> 没有存储任何内存地址的指针就称为空指针(NULL指针)2> 空指针就是被赋值为0的指针,在没有被具体初始化之前,其值为0。例如:Book *book=NULL;Book *book=nil;野指针:"野指针"不是NULL指针,是指向"垃圾"内存(不可用内存)的指针。野指针是非常危险的。... 阅读全文

posted @ 2015-03-04 16:47 二狗你变了 阅读(256) 评论(0) 推荐(0)

round(),floor(),ceiling()函数的用法和区别
摘要:round() 遵循四舍五入把原值转化为指定小数位数,如:round(1.45,0) = 1;round(1.55,0)=2floor()向下舍入为指定小数位数 如:floor(1.45,0)= 1;floor(1.55,0) = 1ceiling()向上舍入为指定小数位数 如:ceiling(1. 阅读全文

posted @ 2015-02-27 10:27 二狗你变了 阅读(316) 评论(0) 推荐(0)

导航