首页 > 其他 > 详细

【练习】内存管理

时间:2014-04-07 11:27:31      阅读:484      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
#import <Foundation/Foundation.h>
#import "UserInfo.h"
int main(int argc, const char * argv[])
{
  // 创建对象
    UserInfo *user=[[UserInfo alloc] init];
    
    //查看引用次数
    NSLog(@"user retainCount=%li",user.retainCount);
    
    // 保留对象,会增加引用次数
    [user retain];
    NSLog(@"user retain after retainCount=%li",user.retainCount);
    
    // 释放对象,会递减引用次数
    [user release];
    NSLog(@"user release after retainCount=%li",user.retainCount);
   
    //自动释放池
    @autoreleasepool {
        {
            [user retain];
            NSLog(@"user retainCount = %li", user.retainCount);
            
            // 把对象加到自动释放池,当离开自动释放池的时候,池会把池里里面的所有对象的引用次数,都减少1次
            [user autorelease];
        }
        NSLog(@"user retainCount = %li", user.retainCount);
        
        // 释放对象,把引用次数减少到0,让操作系统能回收内存。
        [user release];
        
        return 0;
    }
    
}
bubuko.com,布布扣

 

【练习】内存管理,布布扣,bubuko.com

【练习】内存管理

原文:http://www.cnblogs.com/madeininfi/p/3647942.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!