初学objective c语言4 dealloc
#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相关推荐
- 青少年初学哪门语言类编程比较好?
青少年初学者学习Python的原因在于该语言对学习者有着独特的意义.鉴于其语言的简洁性,青少年在学习的时候非常容易理解,而且实践性非常强,语法也有很好的阅读性,非常适合孩子来学习.另一方面,人工智能编 ...
- c语言初学知识点,C语言学习关于数据类型的一些知识点(初学者)
1.整型常量的的前缀:(1)十进制常数无前缀. (2)八进制常数前缀为0,八进制常数无符号. (3)十六进制常数前缀为0X或0x. 注:在程序中是根据前缀来区分各种进制数的.因此在书写常数时不要把前缀 ...
- c语言风景日历制作系统,初学,C语言日历制作
VC编译实现万年历的输出 具体功能:输入任意年份,输出日历(主要是对其星期的排列问题). 主要算法:基姆拉尔森计算公式(计算任意日期的星期 ) W= (d+2*m+3*(m+1)/5+y+y/4-y/ ...
- C语言/C++初学 问题
编程及C/C++初学者 FAQ 本文原为本人在论坛所发若干帖,意在集中解决新手学习C/C++语言时将遭遇到的各类问题,网友反馈情况良好,集合修订后作为个人作品贴于此处. 本贴主要分析概念原理和解决方 ...
- 从Go、Swift出发:语言的选择需谨慎
Google于2009年第一次提出了Go的构思,Facebook在去年春天引入了Hack,随后不久Apple也发布了其Swift语言. 在战争中,胜利者写历史书:在科技中,赢的公司都在写编程语言.互联 ...
- python语言合法命名的_python语言合法命名_python合法命名
CSDN提供了精准python语言的合法命名信息,主要包含:python语言的合法命名信等内容,查询最新最全的python 单下划线结尾_:只是为了避免与python关键字的命名冲突 双下划线开头:模 ...
- c语言的内部名和外部名,C语言 external
c语言中external,static关键字用法 - 大海中的一粒沙 - 博... 2017年4月12日 c语言中external,static关键字用法 static用法: 在C中,static主要 ...
- c语言函数内判断嵌套常见错误,c语言不等于(c语言多个if函数怎么嵌套)
其实我想问的是!=和==!有区别吗?我测试了一下,好像一样啊... 初学. 不等于符号就是 != != 是逻辑运算符,这个符号一般不适用于字符串的比较 != a为变量,用if语句检测a(不等于,大于, ...
- 记录C语言学习【单个按键之长按+短按】
最近学习C语言,偶然看到一句话很是赞同. 学会了的境界: 境界1是自己看会了: 境界2自己独立做出来了: 境界3自己可以独立做出来,并描述出来了: 境界4可以把别人教会了. 初学单片机C语言,本按键程 ...
最新文章
- MySql查询随机几条数据
- Javascript:call(),apply()和bind()
- AAAI 2019 使用循环条件注意力结构探索回答立场检测任务
- 【唐宇迪 深度学习-3D点云实战系列】学习笔记
- 服务器ssd硬盘格式化,ssd固态硬盘格式化教程
- 4_04_GLib库入门与实践_指针数组
- 如何使用Xcode的Targets来管理开发和生产版本的构建
- 小米手机刷机工具MiFlash
- 如何搭建一个网站,访问量一天几千人如何购买服务器?...
- dts,dtb,dtc
- 一个简单的猜数字APP(一)
- 小程序滑动点击切换中间大图两边小图
- vue中写svg组件svg图片加载不出来
- TypeScript 命名空间整理
- 基于 SoC 的卷积神经网络车牌识别系统设计(4-3)基于 Verilog 的 HSV2Binary IP 设计
- Processing编程学习指南2.4 速写本
- SQL服务器日志自动收缩,SQLServer2008日志收缩
- 鸿钧老祖、如来、菩提老祖、…
- android中 WIFI定位
- 暴打JavaScript语法之getElementById()、getElementsByTagName()全能解释
热门文章
- python save保存图片到本地_python爬取网站上的图片并保存到本地
- ggplot2作图详解:图层语法和图形组合
- 2020idea插件怎么同步_暴击单身狗,异地情侣居然靠一款插件同步追剧!
- 【备忘】高斯判别分析(GDA)参数手推记录
- 决策树(一)--ID3
- 软件工程考研复试基本概念
- 数据库SQL语句 | 快速上手 | 面试复习
- centos mysql5.7主从同步配置_centos 7 配置 mysql 5.7 主从复制
- java rcfile,hsqldb sqltool rcfile不起作用
- C++11for(auto iter : container)auto简介