A.概念 @property 的修饰词 strong: 强指针/强引用(iOS6及之前是retain) weak: 弱智真/弱引用(iOS6及之前是assign) 默认情况所有指针都是强指针 使用 "__weak" 修饰的指针是弱指针 ARC准则:只要没有强指针指向,对象就会被销毁 @propert...
分类:
移动开发 时间:
2014-12-28 01:43:35
阅读次数:
147
对share_ptr,属于强引用型的智能指针。内部通过引用计数实现对对象的管理,在引用计数为0时,自动释放对象。使用share_ptr的缺点是:会造成对象的循环引用,导致对象永远无法释放,比如:Share_ptr可以在多线程中使用,确保指针指向的对象是有效的。Weak_ptr是弱引用性的智能指针。W...
分类:
其他好文 时间:
2014-12-18 22:13:05
阅读次数:
274
一.Block定义
1.1定义
(1)Block是OC中的一种数据类型,在iOS开发中被广泛使用
(2)^是Block的特有标记
(3)Block的实现代码包含在{}之间
(4)大多情况下,以内联inline函数的方式被定义和使用
(5)Block与C语言的函数指针有些相似,但使用起来更加灵活
1.2示例代码
void...
分类:
其他好文 时间:
2014-12-17 21:02:49
阅读次数:
236
三、缓存图像1.使用内存缓存内存缓存在提高占用APP内存的情况下,提供快速访问图像的便利。提倡使用LruCache来引用图像(早在API4的Support Library中已经提供该类),通过强引用LinkedHashMap来缓存LruCache,保持最新最近使用的LruCache,移除最后使用的L...
分类:
移动开发 时间:
2014-12-15 13:36:27
阅读次数:
217
shell 中有两类字符, 普通字符和 元字符。当要去掉元字符的特殊含义恢复其字面意义时必须借用引用。 通常有三种引用方式,转义,强引用(使用单引号),弱引用(使用双引号)。强引用: 单引号中的任何字符都要看作普通字符,除了单引号本身。无法在两个单引号中间包含单引号,用转义\也不行。弱引用: 除了双...
分类:
其他好文 时间:
2014-12-10 15:53:58
阅读次数:
122
//#import #import "Animal.h"int main(int argc, const char * argv[]) { @autoreleasepool { //1. 创建方法 //2. 排序 //3. 取元素 //4. 连接,分隔 //5. 强引用 //6. for...in ...
分类:
移动开发 时间:
2014-12-09 21:06:33
阅读次数:
218
Java/Android中有四种引用类型,分别是:Strong reference - 强引用Soft Reference - 软引用Weak Reference - 弱引用Phantom Reference - 虚引用不同的引用类型有着不同的特性,同时也对应着不同的使用场景。1.St...
分类:
移动开发 时间:
2014-12-08 22:49:15
阅读次数:
276
闭包中的循环强引用解决闭包和类实例之间的循环强引用可以通过定义捕获列表来实现。捕获列表捕获列表中的每个元素都是由weak或者unowned关键字和实例的引用(如self)成对组成。每一对都在方括号中,通过逗号分开:lazy var someClosure: (Int, String) -> String = {
[unowned self] (index: Int, stringToPro...
分类:
编程语言 时间:
2014-12-02 00:12:08
阅读次数:
320
__strong 修饰符
__strong 是id类型和所有对象类型默认的所有权修饰符
__strong 表示对对象的强引用,在ARC中持有强引用变量在超出其作用域或强引用失效(如被置为nil),则引用对象被自动释放...
分类:
其他好文 时间:
2014-11-29 16:04:33
阅读次数:
145
storyboard中的控件,比如标签,图片,按钮什么的。拖到对应的类文件以后,跳出来的属性是IBOutlet,是弱引用,为什么不是强引用呢,因为storyboard已经强引用他了,所以呢,当你把它removeFromSuperView以后,再想...
分类:
其他好文 时间:
2014-11-28 21:30:39
阅读次数:
369