集合内存管理
//
//? main.m
//? 12-集合內存管理
//
//? Created by apple on 14-3-21.
//? Copyright (c) 2014年 apple. All rights reserved.
//
?
#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[])
{
?
? ? @autoreleasepool {
?? ? ? ?
? ? ? ? // retainCount 1
? ? ? ? Person * p? = [[Person alloc] init];
?? ? ? ?
? ? ? ? //1
? ? ? ? NSMutableArray * array = [[NSMutableArray alloc] initWithCapacity:0];
?? ? ? ?
? ? ? ? //當你把對象存入到,數組中的時候,數組會對這個對象進行一次 retain操作
? ? ? ? [array addObject:p];// [p retain] retaiCount 2
?? ? ? ?
? ? ? ? //當你把一個對象移除數組中的時候,會對該對象進行一次 release操作 retainCount 1
//? ? ? ? [array removeObject:p];
? ? ? ? //會對數組中所有的對象,進行一次,relsease操作
//? ? ? ? [array removeAllObjects];
?? ? ? ?
? ? ? ? //當集合對象被銷毀的時候,會對其內部所有的對象進行一次 release操作
? ? ? ? //0
? ? ? ? [array release];
? ? ? ? //retainCount - 0
?? ? ? ?
?? ? ? ?
? ? ? ? //0
? ? ? ? [p release];
?? ? ? ?
? ? ? ? NSLog(@"ddddd");
?? ? ? ?
? ? }
? ? return 0;
}
?
轉載于:https://www.cnblogs.com/supper-Ho/p/6185778.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
- 上一篇: 【树莓派】关于tinyproxy问题处理
- 下一篇: 解决 connect to host g