#import <foundation/foudation.h>
#import  "Init.h"
#import  "Eyes.h"
int main(int argc,const char *argv[])//main函数
{Init *fp=[Init alloc];//创建对象[fp col];             //调用方法Eyes*p=[Eyes alloc];  //创建对象[p release];       //手动计数retaincount-1   P被释放是时系统也会调用dealloc函数[fp release];      //手动计数retaincount-1return 0;
}

#import <foundation/foudation.h>
#import "Eyes.h"@interface   Init.h : NSObject  //类
{@protectedfloat _height; //类成员变量Eyes *_eyes;    //定义一个Eyes类型的指针
}
-(void)dealloc;      //类方法
-(void)colour;
@end

@Implementation    Init  //类方法的实现,一般只能在.m文件里
-(void)dealloc
{NSLog(@"%d %s",__LINE__,__func__);[_eyes release]                //当_eyes 被回收时,系统会调用dealloc函数,就会打印一次line func[super dealloc];
}
-(void)colour
{_eyes=[Eyes new];_eyes->colour='r';
}
@end

#import <foundation/foundation.h>
@interface     Eyes:   NSObject      //创建一个类
{@ publicchar colour;
}
-(void)dealloc;              //类方法
@end

#import "Eyes.h"
@inpiementation Eyes
-(void)dealloc               //类方法的实现
{                      @NSLog(@"%d",__LINE__);[super dealloc];
}
@end

申请的内存,在使用玩之后,必须释放该指针指向的那内存

一般 要遵循时谁申请谁释放;

例如:现在创建了3个文件,Init 、Bone、Eyes.

Init的父类是nsobject ,bone的父类是Init,Eyes的父类是nsobject.

在bone里面申请的对象被释放时,系统会自动调用dealloc方法,[super dealloc]返回一个调用dealloc的信号;

在Init里面申请一个Eyes内存大小的空间,当接受到子类Bone的信号时,在Init里面的dealloc方法里面,release一次Eyes内存空间;

总结:整个过程相当与一个内存的回收.

转载于:https://www.cnblogs.com/studylove/p/3519864.html

初学objective c语言4 dealloc相关推荐

  1. 青少年初学哪门语言类编程比较好?

    青少年初学者学习Python的原因在于该语言对学习者有着独特的意义.鉴于其语言的简洁性,青少年在学习的时候非常容易理解,而且实践性非常强,语法也有很好的阅读性,非常适合孩子来学习.另一方面,人工智能编 ...

  2. c语言初学知识点,C语言学习关于数据类型的一些知识点(初学者)

    1.整型常量的的前缀:(1)十进制常数无前缀. (2)八进制常数前缀为0,八进制常数无符号. (3)十六进制常数前缀为0X或0x. 注:在程序中是根据前缀来区分各种进制数的.因此在书写常数时不要把前缀 ...

  3. c语言风景日历制作系统,初学,C语言日历制作

    VC编译实现万年历的输出 具体功能:输入任意年份,输出日历(主要是对其星期的排列问题). 主要算法:基姆拉尔森计算公式(计算任意日期的星期 ) W= (d+2*m+3*(m+1)/5+y+y/4-y/ ...

  4. C语言/C++初学 问题

    编程及C/C++初学者 FAQ  本文原为本人在论坛所发若干帖,意在集中解决新手学习C/C++语言时将遭遇到的各类问题,网友反馈情况良好,集合修订后作为个人作品贴于此处. 本贴主要分析概念原理和解决方 ...

  5. 从Go、Swift出发:语言的选择需谨慎

    Google于2009年第一次提出了Go的构思,Facebook在去年春天引入了Hack,随后不久Apple也发布了其Swift语言. 在战争中,胜利者写历史书:在科技中,赢的公司都在写编程语言.互联 ...

  6. python语言合法命名的_python语言合法命名_python合法命名

    CSDN提供了精准python语言的合法命名信息,主要包含:python语言的合法命名信等内容,查询最新最全的python 单下划线结尾_:只是为了避免与python关键字的命名冲突 双下划线开头:模 ...

  7. c语言的内部名和外部名,C语言 external

    c语言中external,static关键字用法 - 大海中的一粒沙 - 博... 2017年4月12日 c语言中external,static关键字用法 static用法: 在C中,static主要 ...

  8. c语言函数内判断嵌套常见错误,c语言不等于(c语言多个if函数怎么嵌套)

    其实我想问的是!=和==!有区别吗?我测试了一下,好像一样啊... 初学. 不等于符号就是 != != 是逻辑运算符,这个符号一般不适用于字符串的比较 != a为变量,用if语句检测a(不等于,大于, ...

  9. 记录C语言学习【单个按键之长按+短按】

    最近学习C语言,偶然看到一句话很是赞同. 学会了的境界: 境界1是自己看会了: 境界2自己独立做出来了: 境界3自己可以独立做出来,并描述出来了: 境界4可以把别人教会了. 初学单片机C语言,本按键程 ...

最新文章

  1. MySql查询随机几条数据
  2. Javascript:call(),apply()和bind()
  3. AAAI 2019 使用循环条件注意力结构探索回答立场检测任务
  4. 【唐宇迪 深度学习-3D点云实战系列】学习笔记
  5. 服务器ssd硬盘格式化,ssd固态硬盘格式化教程
  6. 4_04_GLib库入门与实践_指针数组
  7. 如何使用Xcode的Targets来管理开发和生产版本的构建
  8. 小米手机刷机工具MiFlash
  9. 如何搭建一个网站,访问量一天几千人如何购买服务器?...
  10. dts,dtb,dtc
  11. 一个简单的猜数字APP(一)
  12. 小程序滑动点击切换中间大图两边小图
  13. vue中写svg组件svg图片加载不出来
  14. TypeScript 命名空间整理
  15. 基于 SoC 的卷积神经网络车牌识别系统设计(4-3)基于 Verilog 的 HSV2Binary IP 设计
  16. Processing编程学习指南2.4 速写本
  17. SQL服务器日志自动收缩,SQLServer2008日志收缩
  18. 鸿钧老祖、如来、菩提老祖、…
  19. android中 WIFI定位
  20. 暴打JavaScript语法之getElementById()、getElementsByTagName()全能解释

热门文章

  1. python save保存图片到本地_python爬取网站上的图片并保存到本地
  2. ggplot2作图详解:图层语法和图形组合
  3. 2020idea插件怎么同步_暴击单身狗,异地情侣居然靠一款插件同步追剧!
  4. 【备忘】高斯判别分析(GDA)参数手推记录
  5. 决策树(一)--ID3
  6. 软件工程考研复试基本概念
  7. 数据库SQL语句 | 快速上手 | 面试复习
  8. centos mysql5.7主从同步配置_centos 7 配置 mysql 5.7 主从复制
  9. java rcfile,hsqldb sqltool rcfile不起作用
  10. C++11for(auto iter : container)auto简介