从逻辑层次来看,在STL中体现了泛型化程序设计的思想(generic programming),引入了诸多新的名词,如需求(requirements),概念(concept),模型(model),容器(container),算法(algorithmn),迭代子(iterator)等。与OOP(object-oriented programming)中的多态(polymorphism)一样,泛型也是一种软件的复用技术。
从实现层次看,整个STL是以一种类型参数化(type parameterized)的方式实现的,这种方式基于一个在早先C++标准中没有出现的语言特性--模板(template)。如果查阅任何一个版本的STL源代码,你就会发现,模板作为构成整个STL的基石是一件千真万确的事情。除此之外,还有许多C++的新特性为STL的实现提供了方便。
2.4 Visual Studio 2010 简介
Visual Studio 2010是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。Visual Studio 2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。Visual Studio 2010同时带来了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview--CTP),并且支持开发面向Windows 7的应用程序。除了Microsoft SQL Server,它还支持 IBM DB2和Oracle数据库。新的IDE更好的支持了多文档窗口以及浮动工具窗,并且对于多显示器的支持也有所增强。具有内置的Microsoft Silverlight开发支持,包含一个交互设计器。Visual Studio 2010将会提供一些工具来使并行计算更加简单:除了.NET Framework的本地代码并行扩展以及并行模式库(Parallel Patterns Library),Visual Studio 2010还包含了用于调试并行程序的工具。这些新工具使并行任务以及它们的运行时堆栈可视化。这些工具可以用来可视化线程等待时间以及线程在多核心之间的移动。
3 需求分析 源'自:优尔-'论.文'网"]www.youerw.com
3.1功能需求
游戏中的功能需求主要分为角色攻击和移动功能,以及角色爆炸效果的实现,还有游戏中角色的碰撞检测。
角色类型设置:游戏需实现的角色有:敌机(多种类型),敌机子弹(多种类型),我方战机,战机子弹
攻击功能:敌机根据设定的子弹进行攻击,可以使用多种攻击策略,如:直线固定速度攻击,直线变速度攻击,跟踪攻击功能
角色移动:根据飞机设置的X,Y轴速度和方向进行位置移动。敌机按设置方向移动,我方战机则由用户通过使用键盘方向键自由进行控制。同时还要判断出敌机和子弹是否越界(即超过窗口边界),一旦超出边界则无效,应立即删除。
爆炸实现:根据敌机在某一位置被命中完全失血后,记录该位置并在该位置绘制一系列爆炸图。
碰撞检测:游戏中各种角色一旦发生碰撞,都要进行相关碰撞检测并产生事件后果。如:敌机和我方子弹碰撞,根据我方子弹威力值,敌机生命值要进行相应减少并判断是否完全失血死亡。