c语言编写小游戏系列教程之推动箱子,C_C++,自学去(9)

2021-02-21 08:48

复制代码

具体的可以看上面的注释,主要就看extern这个关键字的作用。

还有 全局变量和全局的枚举类型 需要放在头文件之前,因为这些头文件里面使用了这些类型,如果放在后面,会导致找不大这些类型。

好了,box的所有功能都写在 box.h 和 box.c文件中了,我们要使用他的功能 只需要引入  box.h 然后把box.c一起编译进程序就可以了,具体编译,后面会讲。

来总结一下,多文件的程序都需要注意的事情:

1.除非真的需要,否则不要在头文件中定义变量,最好是在源文件中定义好,头文件中,做一个外部声明。原因,看上面config.h中对 extern的注释。

2.源文件中,确定只提供给内部使用的函数都加上 static 关键词修饰。3.使用 #ifndef指令 保证头文件只能被包含一次。4.把要提供给外部访问的函数声明写在头文件中。

障碍物检测

上节课的人物可以穿过箱子和障碍物,那么如何让他无法穿过呢?其实只需要对人物前方的物体做一个检测:那么,什么情况是可以移动呢?

第一,空旷的地面,肯定是可以移动。

第二,目标点,就是箱子要移动到的位置的那个点,是可以移动上去的。第三,前面是箱子的时候,得分情况了。这个后面移动箱子的时候会讲。

那么我们只需要写一个函数来检测是否可以移动即可,比如就叫 can_move int can_move(person_t* person, dir_t dir)


c语言编写小游戏系列教程之推动箱子,C_C++,自学去(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:局部解剖学(上肢)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: