A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 直到世界的尽头 于 2014-11-19 11:34 编辑

07-作业讲解05-圆的方法

1>当一个方法是用来判断某种情况是否发生的时候,方法名一般用is开头。
2>只要涉及到类,一定要注意指针符号* 的使用,当然当类调用类方法时候就不要用*了。
程序和结果:
老师在这一节中上课所讲授的代码和最终代码有出入,而且比较大。当然最终代码在
苹果开发零基础入门教程\黑马程序员IOS开发零基础教程源代码和PPT\课程代码\代码
\0807\0805作业-答案\03-编程题 06.m中的代码是正确的。请大家注意。

问题是:在判断两个圆是否相交这个类方法,以及判断此圆和另一个圆是否相交这个对象方法
的调用问题上,视频中具体的计算两个圆的半径和以及两个圆的圆心距离的实现是在对象
方法中,然后在类方法中返回该对象方法。而最终的苹果开发零基础入门教程
\黑马程序员IOS开发零基础教程源代码和PPT\课程代码\代码
\0807\0805作业-答案\03-编程题 06.m中的代码则是相反的:是在类方法中实现,然后在
对象方法中返回!
请大家学习过程中注意参照老师给的源代码进行学习!


08-多文件开发01-类的独立抽取

类的抽取
1>建立各个类对应的.m文件,注意文件名应该和对应的类名相同!
2>将对应的类的从声明到实现的代码剪切至该文件,注意对应的类导入(如果你需要测试
每一个文件的话,那么都要导入)
3>重复1>,2>直至只剩下main函数

注意:其中各个文件是一定可以编译成功的(要注意类与类的import),但是不能独立
链接运行。


09-多文件开发02-.h文件和.m文件的分工

现象
如作业6:比较两个圆是否相交,从原来的一个.m文件里面抽取Point 2D.m Circle.m
main.m 三个文件,如果在终端输入 cc Point 2D.m Circle.m main.m -framework
Foundation则会出现链接报错。
解决
回想c语言,xcode是将所有文件放在一起进行链接编译,所以会出现上面的现象。为了
解决这个现象,在oc的项目中,由于类太多,所以为了在最终一起编译链接不报错,
那么以后所有的import语句后面只跟.h的声明文件
1>将各个类的声明写在对应类名的头文件.h文件中
2>在对应的类实现.m文件之前将对应的.h文件import
所以以后写类写两个文件.h文件写类的声明.m文件写类的实现
3>在不同的类的实现.m文件中,如果他们之间有联系,如果想避免上面的报错,那么只要
在各个.m文件中包含各个类的.h文件就行了。例如 #import XXXX.h就行了。不要出现
#import XXXX.m !
所以现在将所有的.m文件一起编译链接就可以运行了,而且不报错。


更多图片 小图 大图
组图打开中,请稍候......

评分

参与人数 1黑马币 +1 收起 理由
星河鹭起 + 1

查看全部评分

14 个回复

倒序浏览
赚点分赚点分
回复 使用道具 举报
楼主吊炸天
回复 使用道具 举报
来一发来一发
回复 使用道具 举报
还有币吗
回复 使用道具 举报
还有币吗。。。
回复 使用道具 举报
。。。楼主这是在干嘛??
回复 使用道具 举报
qiusiyu 中级黑马 2014-11-20 10:11:55
8#
{:3_54:}。。。。
回复 使用道具 举报
楼主吊炸天
回复 使用道具 举报
itDave 中级黑马 2014-11-20 21:03:33
10#
我去,真是醉了!
回复 使用道具 举报
itDave 发表于 2014-11-20 21:03
我去,真是醉了!

多谢帮顶
回复 使用道具 举报
楼主都看完了啊
回复 使用道具 举报

哪有这么快 最近上班忙死了
回复 使用道具 举报
分咋赚得呀。。。我的好慢呀
回复 使用道具 举报
SunJiaqi 发表于 2014-11-22 21:17
分咋赚得呀。。。我的好慢呀

广发水贴
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马