zoukankan      html  css  js  c++  java
  • autorelease应用

    //

    //  main.m

    //  02-autorelease应用

    //

    //  Created by apple on 14-3-18.

    //  Copyright (c) 2014年 apple. All rights reserved.

    //

    #import <Foundation/Foundation.h>

    #import "Chief.h"

    int main(int argc, const char * argv[])

    {

        @autoreleasepool {

        

            /*

            Chief * chi  = [[Chief alloc] init];

            Food * food = [chi makeFood];;

            

            NSLog(@"%@",food.name);//[nil name];

            

            [chi release];

            */

            

            

            Chief * chi = [Chief chief];

            Food * food = [chi chiefMakeFood];

            

            NSLog(@"%@",food.name);

            

            NSString * name = [NSString stringWithFormat:@"%@",@"施瓦辛格"];//都是autorelease

            NSLog(@"%@",name);

            

        }

        return 0;

    }

    //

    //  Chief.m

    //  01-autorelease基本概念

    //

    //  Created by apple on 14-3-18.

    //  Copyright (c) 2014年 apple. All rights reserved.

    //

    #import "Chief.h"

    @implementation Chief

    - (void)dealloc

    {

        [super dealloc];

        NSLog(@"厨师被回收了");

    }

    + (Chief *)chief

    {

        /*

        Chief * chi = nil;

        

        chi = [[Chief alloc] init];

        

    //    [chi release];

        [chi autorelease];

        */

        

        Chief * chi = [[self alloc] init];

        

        

        return [chi autorelease];

    }

    - (Food *)chiefMakeFood

    {

       

      

        //如果在方法中创建一个对象,最好给我初始化为nil,防止出现野指针错误

        // 1

        Food * food = [[Food alloc] init];

        food.name = @"凑豆乳";

    //    // 0

    //    [food release];

        [food autorelease];

        

        return food;

        

    }

    @end

  • 相关阅读:
    C++ 线程的创建、挂起、唤醒和结束 &&&& 利用waitForSingleObject 函数陷入死锁的问题解决
    接收数据界面卡顿-----待整理
    vs2012 在调试或运行的过程中不能加断点
    matlab 学习笔记
    周立功USBCAN-II 上位机开发(MFC)
    vs添加静态链接库+添加动态链接库+添加头文件目录
    Go 面试每天一篇(第 2 天)
    http 协议
    Samba配置
    svn checkout 单个文件
  • 原文地址:https://www.cnblogs.com/supper-Ho/p/6168729.html
Copyright © 2011-2022 走看看