assign: 简单赋值,不更改索引计数-(void)setMyObject:(id)newValue{ _myObject = newValue; }copy: 建立一个索引计数为1的对象,然后释放旧对象-(void)setMyObject:(id)newValue{ if (_myO...
分类:
移动开发 时间:
2014-12-22 11:05:49
阅读次数:
184
在我们开发iOS程序时,常常会遇到:property和synthesize,以前很懒没有仔细去理解,只是看了看别人写的书,觉得挺容易的(在这里我不得不说,现在很多本土出的土书,尤其是早期的2009年,写的是真乱,误人子弟),所以今天有时间,自己试验了一番,希望和大家讨论。property,..
分类:
其他好文 时间:
2014-12-21 18:09:43
阅读次数:
168
-------android培训、java培训、期待与您交流! ----------一、基本简介ØARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain、release、autorelease语句。你不再需要担心内存管理,因为编译器为你处理...
分类:
其他好文 时间:
2014-12-20 07:05:58
阅读次数:
190
ARC指南1 - strong和weak指针提示:本文中所说的"实例变量"即是"成员变量","局部变量"即是"本地变量"一、简介ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain、release、autorelease语句。你不再需要担...
分类:
其他好文 时间:
2014-12-19 23:13:42
阅读次数:
285
错误在于你的工程下的某一个类中的下面这行
@property (retain, nonatomic) NSString *newImage;
错误就是因为用了new这个关键字,所以说我把new改为news就好了
严格上来说,主要的错误原因是 声明属性时要遵循内存管理原则,即不要使用某些关键字...
分类:
其他好文 时间:
2014-12-19 19:11:25
阅读次数:
168
http://blog.csdn.net/mars2639/article/details/7352540https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/...
分类:
移动开发 时间:
2014-12-19 17:13:01
阅读次数:
174
主要的区别是加self. 会调用变量的GET和SET方法而根本的区别在于变量的SET方法,而SET方法和变量的@property 属性有关。// assign -(void)setMyObject:(id)newValue{ _myObject = newValue; } // retain...
分类:
其他好文 时间:
2014-12-18 16:34:46
阅读次数:
122
retain cycle 的产生说到retain cycle,首先要提一下Objective-C的内存管理机制。作为C语言的超集,Objective-C延续了C语言中手动管理内存的方式,但是区别于C++的极其非人道的内存管理,Objective-C提出了一些机制来减少内存管理的难度。 比如:内存计数...
分类:
移动开发 时间:
2014-12-15 18:47:32
阅读次数:
443
这一天主要学习了内存管理的部分,感觉稍显复杂,但只要遵循总的原则就不会错谁声明,谁销毁,谁retain,谁release1.在类的成员变量是oc对象时,set方法需要写内存管理如-(void)setBook:(Book*)book{if(_book!=book){[_bookrelease];_book=[bookretain];}}还要在调用这个set方..
分类:
其他好文 时间:
2014-12-11 19:26:11
阅读次数:
231
oc对象的一些属性:retain,strong, copy,weak,assign,readonly, readwrite,unsafe_unretained下面来分别讲讲各自的作用和区别:retain,计数器加1,(增加一个指向内存的指针)对应release(计数器-1)setter 方法对参数进...
分类:
移动开发 时间:
2014-12-11 15:32:24
阅读次数:
131