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

  • 相关阅读:
    linux文件系统初探--Day6
    Oracle 内置函数
    libusb常用函数说明(转)
    将多个blv格式的视频合并为一个mp4格式视频
    泰迪杯赛后总结
    如何下载B站上版权受限的视频?
    查看Ubuntu版本信息
    Visual Studio存在多个项目时启动项目的问题
    mfc | 初识mfc
    re | [ACTF新生赛2020]Splendid_MineCraft
  • 原文地址:https://www.cnblogs.com/supper-Ho/p/6168729.html
Copyright © 2011-2022 走看看