欢迎来到天天文库
浏览记录
ID:33750527
大小:417.16 KB
页数:29页
时间:2019-02-28
《送给初学者的礼物:c++游戏编程起源连载一》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、上学吧(www.shangxueba.com)送给初学者的礼物:C++游戏编程起源连载一第一章Windows编程基础简介本章目的是介绍WINDOWS编程基础。在本章结束时,你应该能够很好的工作了,虽燃可能是简单的WINDOWS程序。你需要有C语言的基础知识,我很少将C++的代码扩充到程序中。当然,由于WINDOWS本身就是面向对象的,一点类的知识是不会对你有什么损害的。如果你不熟悉C++,没有关系,我想你还是能从我这里学到大部分的东西。所有的程序代码都通过了MICROSOFTVISUALC++6.0的编译,如果你还没有合适的编译器,那就用它好了,还是很棒的。开动吧!多数的Windows
2、程序都需要Windows.h和Windowsx.h这两个头文件,要确保使用它们。当然,你还需要其它的标准的C的头文件,象stdio.h,conio.h等。除了这些,你还会经常看到在程序的开始有这样一行代码:#defineWIN32_LEANAND_MEAN它表示Windows的头文件中将拒绝接受MFC的东西,这将加速你的build时间。如果你从没有打算应用MFC在你的游戏编程中,那就使第1页,共29页上学吧为您提供“计算机等级考试”复习资料下载:http://www.shangxueba.com/share/s23.html上学吧(www.shangxueba.com)用它吧。如果你以
3、前从没有看过这种声明类型——在#define后,直接加上一个“单词”,那么它的作用就是有条件编译。看看下面的例子:#ifdefDEBUG_MODEprintf("Debugmodeisactive!");#endif意思是:如果程序的开始包含#defineDEBUG_MODE,那么就printf(),否则退出。这个对于你跟踪程序的逻辑错误是很有帮助的。WinMain()函数DOS下的C语言从main()开始,Windows下的C语言从WinMain()开始,一个空的WinMain()函数是这样的:intWINAPIWinMain(HINSTANCEhinstance,HINSTANCE
4、hPrevInstance,LPSTRlpCmdLine,intnCmdShow){return(0);}第2页,共29页上学吧为您提供“计算机等级考试”复习资料下载:http://www.shangxueba.com/share/s23.html上学吧(www.shangxueba.com)一个函数即使什么也没做,也应该返回一个值。是的,有好多东西我们不熟悉。首先的首先,WINAPI是个什么声明?WINAPI是在windows.h头文件中定义的一个宏,它把函数调用翻译成正确的调用约定。当我们在程序中需要用到汇编语言的时候,我们在来深究它好了,记住,如果要用WinMain(),就必须要
5、有WINAPI。下一步让我们来看看括号里的四个参数:◎HINSTANCEhinstance:HINSTANCE是一个句柄类型的标识符。变量hinstance是一个整数,用于标识程序实例。Windows设置这个参数的值,并把它传递给你的程序代码。很多Windows函数都要用到它。◎HINSTANCEhPreInstance:你不用担心这个参数,它已经被废掉了。它只是为古老的Windows版本服务的。你将还会看到类似的情况。◎LPSTRlpCmdLine:是一个指向字符串的指针,它仅在程序名是从DOS命令行输入或是从Run对话框中输入时才起作用。因此,很少被程序代码所用。第3页,共29页上
6、学吧为您提供“计算机等级考试”复习资料下载:http://www.shangxueba.com/share/s23.html上学吧(www.shangxueba.com)◎intnCmdShow:决定了窗口在初始显示时的状态。Windows通常给这个参数分配一个值。通常是SW_打头的一个常量。例如SW_SHOWNORMAL表示默认状态,SW_MAXINIZE或SW_MINIMIZE分别表示最大和最小模式等等。以上大体上是WinMain()的参数的介绍。下面对变量、参数、常量、类等的命名方法介绍一下。一、消息当你在DOS下编程的时候,你不必担心其它程序的运行,因为DOS是独占模式。但你在
7、Windows平台上编程时,你不得不考虑其它正在运行的程序。鉴于此,Windows通过“消息”来连接操作申请和具体操作。简单的说,就是我们指示程序或程序本身向Windows发出诸如移动窗口、放大窗口、关闭窗口等申请,Windows再根据申请,考察实地情况,拒绝或发出指令,让程序(计算机)作出相应的动作。再例如,鼠标随时向Windows发出消息,汇报光标位置,左键或右键是否按下等,Windows再根据消息作出相应的反应。总之,无论何时,Windo
此文档下载收益归作者所有