WINDOWS编程案例分析 WINDOWS编程案例分析

WINDOWS编程案例分析

  • 期刊名字:武汉船舶职业技术学院学报
  • 文件大小:562kb
  • 论文作者:沈宫新
  • 作者单位:南京化工职业技术学院
  • 更新时间:2020-09-25
  • 下载次数:
论文简介

一一工程 技术-武汉船舶职业技术学院学报 2010年第2期-WINDOWS编程案例分析沈宫新(南京化工职业技术学院,江苏南京210048)摘要从DOS操作系统下结构化C语言编程转变到WINDOWS操作系统下的面向对象的C++语言编程,学生不.仅要面对编程语言的发展,同时,操作系统的环境也有了很大的不同, WIND)WS作为多用户多任务的操作系统更加复杂。本文通过DOS小游戏的改编,使用学生比较感兴趣的游戏案例,强化了实现相关概念和知识,在实践中取得了较好的教学效果。关键词C语言;C++语言 ;游戏案例;程序改编中圈分类号TP316.7 文献标志码 A文章编号1671- 8100<2010)02-0039-03C语言与C++语言是不少高校广泛开设的显示和移动。 蛇的三种情况的判断,包括蛇吃食课程,从C语言到C++语言的学习转化是一个物,蛇会增 长,蛇碰墙或蛇首尾相碰,蛇死退出游艰难的过程,因为在这其中要实现结构化程序设戏。整个小游戏的流程并不复杂,但对初学者还.计向面向对象程序设计的转化,同时,操作系统的是有一定难度。环境也有很大的不同,增大了教学的难度。为了1.2 熟悉WINDOWS下的图形工作方式说明结构化程序设计与面向对象程序设计的不同由于前面的小游戏是在DOS下通过调用之处,同时简单了解WINDOWS的基于消息的编TURBO C的图形库(GRAPHICS. LIB)来实现程思维,我们将DOS下用C语言编写的贪吃蛇图形工作方式的,而我们学习C++-般采用的小游戏改编为C++编写,用面向对象的思想来是VC++6.0的开发环境,该环境不支持图形库组织,用类来封装,在WINDOWS下以窗口形式(GRAPHICS. LIB)。这使得很多DOS下的C语运行WIN32的应用程序。言游戏代码在VC+ +6.0中不能通过编译,我们1改编的前提条件只能使用WINDOWSAPI函数来完成图形的绘制,要求在预编译时包含“WINDOWS.H",这样1.1 通读DOS下的贪吃蛇源代码就可以调用大部分的API函数,同时要熟悉.贪吃蛇小游戏包括注释不到200行,是一个WINDOWS图形编程中用到的设备上下文DC经典的游戏案例,能够较好说明结构化编程的思(DEVICE CONTEXT),包括创建DC,创建画想。主函数包括四块,第一块是初始化图形系统,刷,创建画笔。在TURBOC中包括图形库的引用,对应显卡驱1.3熟悉 WINDOWS消息驱动的编程方式动的适配,进入TURBO C的图形开发方式。第在C语言结构化编程中,代码是顺序执行二块是初始化游戏界面,设定游戏的范围在围墙的,有固定的次序。在WINDOWS消息驱动的工中,并显示围墙。第四块是退出图形模式,响应用作方式下,我们为不同的消息准备了不同的处理户任意键退出游戏。游戏的主要部分在第三个模模块中国煤化工的化结束就进入块中实现,包括随即产生和显示食物,蛇的产生、等待∈触发不同处理*YHCNMHG*本文系南京化工职业技术学院教学研究课题(编号:2009-60)收稿日期:2009-12- -20作者简介:沈官新.男,工学硕士.研究方向:面向对象编程,计算机网络。39-武汉船舶职业技术学院学报 2010年第2期-顺序,没有固定的执行次序。程序通过接受特定消息来结束程序的运行。(3)定时器的使用。DOS下的蛇的运动间隔2改编要点通过调用“DELAY"函数来实现,在WIN32 AP-(1)VC工程的建立。在VC++6. 0建立PLICATION中通过设定定时器和响应定时事件WIN32 APPLICATION工程,选择建立典型的来实现。首先在WM_PAINT消息来时实现游“HELLO WORLD"应用,可以让VC的开发环境戏界面初始化,初始化结束设定定时器,在定时器为我们自动生成框架代码。包括WINDOWS系事件触发时,来实现蛇的移动的吃食等情况的判统下的主函数和回调函数,要做的就是添加和改断处理。写代码,来实现自己的功能。进人主函数后,在创(4)蛇的运动控制。蛇的运动分为自动和手建窗口类时改写窗口的外观.背景和光标等样式。动,DOS下的蛇的自动根据实时的方向来移动,然后,注册刚刚创建的窗口类,显示窗口,进人手动通过调用“BIOSKEY"函数接受键盘消息改变蛇头移动方向。在WIN32 APPLICATION定WINDOWS消息循环。(2)对象化的改造。在DOS下蛇和食物都是时事件响应中来实现自动,在键盘的按下或弹起结构体,在WINDOWS下改造成类和对象来实事件中接受键盘消息改变蛇头移动方向。上述要点还有待同学们在实际改造中认真领现。食物的改造比较简单,原来食物的结构体包.会,老师加以引导。在本案例的基础上可以进一括食物出现的横纵坐标和食物显示、隐藏的一个步扩充,让同学们进-步认识到面向对象编程的BOOL值,现在的食物类中不仅要包括上述变量,特点和优势,比如食物可以设定不同颜色来设定还要包括对食物的操作,主要有食物的显示方法.蛇吃到食物加分分值。分别在DOS下的结构化和隐藏方法,通过传递当前的DC句柄结合食物的C代码中改写,和在WINDOWS下的面向对的位置来显示和隐藏。食物显示位置通过随机函象的C++中改写,并加以比较。复杂一点的,可数在围墙内生成,食物隐藏发生在蛇吃掉食物后,以对蛇的外观和运动方式加以修改,再加以比较。在蛇的运动过程中存在判断是否吃到食物的情况3结语和是否要重新生成食物,而类的封装特性不允许直接访问类的成员变量,即成员变量一般设置为案例教学已经是计算机教学的趋势,在C+私有属性,因此在食物类中有对应的方法来访问+教学的结束之时,通过一个小游戏的改编,一-方和设置到上述属性。而蛇的改造要稍显复杂,原面可以提高同学们编程的兴趣,另一方面可以进来蛇的结构体包括两个整形的数组,分别存储蛇-步强化面向对象概念和思想。虽然本案例使用每节的横,纵坐标。另外三个整型的变量分别存的是VC++的开发环境,但是在转化过程中并贮蛇的节数,蛇的移动方向和蛇的生命状态。在不涉及MFC框架的使用,可以作为面向对象的构造蛇类中可以把上述结构体内的成员改写成类WINDOWS开发的人门案例。中的私有成员变量。在类的构造函数中设定蛇的参考文献初始位置、节数移动方向。蛇的运动中要判断是1候俊杰深入浅出MFC [M].武汉:华中理工大学出版社2001,5否吃到食物,需要有方法得到蛇头的坐标和改变2杨正校. 新概念车C语言程序设计[M].南京:河海大学出版蛇的节数的方法。蛇也要有显示自身的方法和通社2008,5过隐藏来显示蛇运动效果的方法。蛇碰墙或蛇头[M].北京:清华大中国煤化工碰蛇尾蛇会死,蛇类中要有改变蛇生命状态的方THCNMHG法。10WINDOWS编程案例分析沈宫新-Case Studies and Research of WINDOWS ProgrammingSHEN Gong-xin(Nanjing College of Chemical Technology, Nanjing 210048, China)Abstract: In the transformation of structured C language programming in DOS operating sys-tem to the object-oriented C + + language programming in the WINDOWS operating sys-tem, students face not only language development, but different environment of operatingsystems; WINDOWS as a multiuser and multi-task system is more complicated. This paperintroduces the reprogramming of some mini DOS games and cases that interest students tohelp them strengthen related concepts and knowledge. This practice proves to be effective inteaching.Key words:C language;C+ + language;game case;reprogramming(责任编辑:谭银元)(上接第34页)Abstract: In this paper, we gave 'in example about Linear programming, in which the opti-mal condition was obtained by soni basic theory of advanced algebra and geometry. This ex-ample indicates the close relations of the two course: the advanced algebra is the basic tool ofGeometry; the Geometry is the background of advanced algebra. It's inappropriate to teach itseparately in collge education.Key words: Advanced algebra; Geometry; linear programming; optimal condition中国煤化工MYHCNMHG41

论文截图
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。