self 的使用

来源:互联网 发布:美团网络异常请重试 编辑:程序博客网 时间:2024/06/05 16:22

1.加self.
MyObject * aMyObject = [[MyObject alloc] init]; //aMyObject retainCount = 1;
self.myObject = aMyObject; //myObject retainCount = 2;
[aMyObject release];//myObject retainCount = 1;

2. 不加self.
MyObject * aMyObject = [[MyObject alloc] init]; //aMyObject retainCount = 1;
myObject = aMyObject; //myObject retainCount = 1;
[aMyObject release];//对象己经被释放
再看直接赋值的:

3.加self.
self.myObject = [[MyObject alloc] init]; //myObject retainCount = 2;

4. 不加self.
myObject = [[MyObject alloc] init]; //myObject retainCount = 1;