1. //
  2. // Dog.h
  3. // OC3_dealloc
  4. //
  5. // Created by zhangxueming on 15/6/18.
  6. // Copyright (c) 2015年 zhangxueming. All rights reserved.
  7. //
  8.  
  9. #import <Foundation/Foundation.h>
  10.  
  11. @interface Dog : NSObject
  12.  
  13. @end
  14.  
  15. //
  16. // Dog.m
  17. // OC3_dealloc
  18. //
  19. // Created by zhangxueming on 15/6/18.
  20. // Copyright (c) 2015年 zhangxueming. All rights reserved.
  21. //
  22.  
  23. #import "Dog.h"
  24.  
  25. @implementation Dog
  26.  
  27. - (void)dealloc
  28. {
  29. NSLog(@"dog release!!!");
  30. [super dealloc];
  31. }
  32.  
  33. @end
  1. //
  2. // main.m
  3. // OC3_dealloc
  4. //
  5. // Created by zhangxueming on 15/6/18.
  6. // Copyright (c) 2015年 zhangxueming. All rights reserved.
  7. //
  8.  
  9. #import <Foundation/Foundation.h>
  10. #import "Dog.h"
  11.  
  12. int main(int argc, const char * argv[]) {
  13. @autoreleasepool {
  14. Dog *xiaoHei = [[Dog alloc] init];
  15. Dog *xiaoBai = [xiaoHei retain];
  16. NSLog(@"retainCount = %li", xiaoBai.retainCount);
  17. Dog *xiaoHui = [xiaoHei retain];
  18. NSLog(@"retainCount = %li", xiaoHui.retainCount);
  19. [xiaoHei release];
  20. NSLog(@"retainCount = %li", xiaoBai.retainCount);
  21. [xiaoBai release];
  22. NSLog(@"retainCount = %li", xiaoHui.retainCount);
  23.  
  24. //最后一次release 的时候,retainCount理论值为的0, 自动调用dealloc方法释放对象
  25. [xiaoHui release];
  26.  
  27. }
  28. return ;
  29. }

OC3_dealloc的更多相关文章

随机推荐

  1. [Android][Android Studio] *.jar 与 *.aar 的生成与*.aar导入项目方法

    主要讲解Android Studio中生成aar文件以及本地方式使用aar文件的方法. 在Android Studio中对一个自己库进行生成操作时将会同时生成*.jar与*.aar文件. 分别存储位置 ...

  2. BZOJ 1043 HAOI2008 下落的圆盘 计算几何

    题目大意:n个圆盘依次下落.求终于能看到的轮廓线面积 円盘反对! 让我们一起团结起来! 赶走円盘! 咳咳.非常神的一道题 今天去看了题解和白书才搞出来-- 首先我们倒着做 对于每一个圆盘处理出在它之后 ...

  3. 直接下载Google Play市场的APK

    传送门在这里:http://apps.evozi.com/apk-downloader/ 似乎很方便.很迅速的样子,忍不住在这里记录一下.

  4. Js Pattern - Self Define Function

    This pattern is useful when your function has some initial preparatory work to do andit needs to do ...

  5. 图的深度优先搜索算法DFS

    1.问题描写叙述与理解 深度优先搜索(Depth First Search.DFS)所遵循的策略.如同其名称所云.是在图中尽可能"更深"地进行搜索. 在深度优先搜索中,对最新发现的 ...

  6. [Javascript] Other functor

    EventStream: You can use RxJS, BaconJS or any reactive programming lib you want: var id_s = map(func ...

  7. Qt 学习第一步 做计划和确定目标

    接下来開始一步步深入学习Qt. 学习的第一步是整理资料,也就是找书和sample. 逛了一些论坛,推荐以下3本书 1> C++ GUI programming with Qt 4(2nd Edi ...

  8. iframe自适应高度的多种方法方法小结

    对于自适应高度的代码有很多,可效率什么的考虑进来好代码就不多见了,不过思路倒是差不多的  不带边框的iframe因为能和网页无缝的结合从而不刷新页面的情况下更新页面的部分数据成为可能,可是 ifram ...

  9. JDK1.6官方下载_JDK6官方下载_JDK1.6API(chm)下载_JDK6APICHM中文参

    JDK1.6官方下载_JDK6官方下载地址:http://www.java.net/download/jdk6/6u10/promoted/b32/binaries/jdk-6u10-rc2-bin- ...

  10. 我和ip_conntrack不得不说的一些事

    面对让人无语的ip_conntrack,我有一种说不出的感觉!自从接触它到现在,已经两年多了,其间我受到过它的恩惠,也被它蹂躏过,被它玩过,但是又不忍心舍弃它,因为我找不到更好的替代.工作中,学习中, ...