C/C++及其相关
-
C++程序设计周志德, 候下昌编著本书共12章,前2章介绍C++的概述、上机过程与C++数据类型和表达式。第3、4章叙述三种基本程序结构、流程控制语句和数组。第5、6章讨论函数的定义和调用方法、函数的嵌套调用和递归调用、变量的存储类型、内联函数、重载函数、编译预处理中的宏定义、"文件包含"处理与条件编译。第7章讲解指针变量、指针数组、指向一维数组的指针变量、返回指针值的函数、函数指针变量、new和delete运算符、引用。第8章介绍枚举型、结构体与链表。第9、10章讲述类和对象、构造函数与析构函数、继承与派生、冲突、支配规则和赋值兼容性与静态成员。第11、12章叙述友元与运算符重载、多态性与虚函数、流类体系与文件操作。本书可以作为高职高专学院计算机、电子等专业的教材,本书起点低,不要求学过其他程序设计语言,可作为程序设计的入门语言来学习,也可作为从事计算机应用工作的工程技术人员培训和自学的参考书。 -
Visual C++/DirectX9 3D游戏开发导引叶至军著内容简介目录内容提要本书全面地介绍了使用Visual C++/DirectX9开发3D游戏的基本方法和步骤。全书共分为21章,主要内容包括Win32 API编程、3D游戏中的数学基础、各种3D渲染原理及其实现技术、DirectInput输入处理和DirectSound声效处理等。另外,对四元数的数学构造、骨骼动画的原理和实现,以及四叉树细节层级地形等其他同类书中很少提及的内容,本书都给出了十分详细的阐述和分析。配套光盘中提供了书中实例的完整工程文件和全部源代码,以方便读者编译、调试,巩固所学知识。本书面向于游戏开发人员,同时也可作为高等院校相关专业和培训机构的游戏课程用书。 目 录第1章 C/C++基础回顾 11.1 浅谈编程行为 11.2 程序结构和分割编译 41.3 编译预处理指令 51.4 程序的注释 71.5 变量的使用 71.6 函数的使用 91.7 指针和引用 101.8 流程控制语句 131.9 结构体和联合体 161.10 用类封装模块 181.11 类的继承 211.12 函数的重载、覆盖和隐藏 221.13 访问权限 231.14 本章小结 24第2章 Win32 API编程基础 252.1 基于回调的Windows程序运行机制 252.2 一个简单的Windows示例程序 262.3 WinMain函数及读取消息的循环体 322.4 注册窗口类 352.5 创建应用程序窗口实例 382.6 回调的窗口过程函数 392.7 编译和调试程序 432.8 匈牙利变量命名方法 452.9 本章小结 46第3章 DirectX 3D游戏开发入门 473.1 三维物体的基本成像流程 473.1.1 世界坐标系的引入 483.1.2 摄影坐标系的引入 493.1.3 剪裁和透视投影 513.1.4 视口变换和像素的光栅显示 523.2 光栅显示器的基本原理 543.3 显示卡的3D渲染管道线 553.4 浅谈COM组件技术 563.4.1 直接调用C++类的函数 573.4.2 将C++类打包成DLL提供调用 593.4.3 利用抽象基类改进C++类 613.5 DirectX 9.0的安装和配置 643.6 本章小结 67第4章 3D游戏中的数学基础 684.1 向量 684.1.1 向量相加 704.1.2 向量相减 714.1.3 向量的标量乘法 724.1.4 向量长度的计算 734.1.5 向量的单位化 744.1.6 向量的点积 754.1.7 向量的叉积 764.2 矩阵 784.2.1 矩阵的基本运算 804.2.2 矩阵的求逆 824.2.3 矩阵的转置 844.3 坐标变换 854.3.1 平移变换 864.3.2 放大缩小变换 894.3.3 旋转变换 904.4 平面 944.4.1 三点确定一个平面 944.4.2 直线与平面的交点 964.4.3 点和平面的位置关系 974.4.4 平面的单位化 984.5 四元数 994.5.1 四元数的数学史 994.5.2 复数的符合逻辑的定义 994.5.3 复数的高维推广:四元数 1004.5.4 四元数在旋转变换中的应用 1014.6 DirectX中的一些具体数学问题的计算 1044.6.1 世界坐标系到摄影坐标系的变换 1044.6.2 齐次剪裁透视投影变换 1064.6.3 视截体的平面计算 1074.6.4 透视投影空间到屏幕视口的变换 1114.7 本章小结 113第5章 键盘、鼠标和游戏杆的输入处理 1145.1 配置DirectInput的动态链接库 1145.2 创建DirectInput接口对象 1155.3 使用DirectInput接口函数 1175.4 设置DirectInput设备的数据格式 1185.5 设置DirectInput设备的协调级别 1195.6 获取输入设备的访问权 1205.7 设置DirectInput设备的属性 1205.8 读取键盘的输入 1225.9 读取鼠标的输入 1285.10 读取游戏杆的输入 1375.11 本章小结 147第6章 游戏框架、输入和时钟引擎类 1486.1 游戏框架类CGameEngine_App 1486.2 输入类CGameEngine_Input 1516.3 时钟类CGameEngine_Timer 1596.4 本章小结 163第7章 基本三角形面的绘制 1647.1 DirectX Graphics基本应用架构 1647.2 创建IDirect3D9接口对象 1667.3 创建Direct3D设备 1667.4 创建顶点缓冲区 1707.5 启动管道流水线进行渲染 1737.6 实例:绘制一个基本的三角形面 1757.7 本章小结 179第8章 基本立体面的绘制 1808.1 3D原始类型 1808.2 顶点顺序和背面剔除 1818.3 顶点索引缓冲区 1838.4 在世界坐标系中放置物体 1868.5 架设摄影机进行取景和投影 1878.6 屏幕视口的设置 1888.7 实例:绘制一个基本的立体面 1898.8 本章小结 196第9章 材质和光照处理 1979.1 颜色与光照 1979.2 光源设置 2009.2.1 点光源 2019.2.2 聚焦光源 2029.2.3 方向光源 2039.2.4 环境光 2049.3 材质设置 2049.4 顶点的法向量 2059.5 实例:点光源渲染 2079.6 本章小结 214第10章 纹理贴图 21510.1 顶点的纹理坐标 21510.2 创建纹理对象 21610.3 纹理过滤技术 21710.4 纹理地址模式 21910.5 实例:纹理贴图 22610.6 本章小结 234第11章 Alpha颜色混合 23511.1 颜色混合原理 23511.2 Alpha颜色混合例子 23711.3 利用ID3DXSprite实现颜色透明 24211.4 利用Alpha测试实现颜色透明 24811.5 本章小结 254第12章 XFile网格的应用 25612.1 .x文件的基本格式 25612.2 .x文件的数据装入 26212.3 Mesh数据的处理 26412.4 Mesh数据的优化 26712.5 实例:.x文件的网格渲染 26912.6 本章小结 275第13章 骨骼动画的实现 27613.1 骨骼动画的基本原理 27613.2 .x文件的动画格式 27913.3 .x文件动画数据的装入 28413.4 骨骼蒙皮的渲染 29213.5 实例:骨骼动画的实现 30013.6 本章小结 308第14章 视点相关的LOD地形渲染 31014.1 地形高度图 31014.2 地表的四叉树分割 31214.3 视点距离相关的细节层级判别 31914.4 地形节点的渲染 32614.5 规范节点的分割 33514.6 实例:LOD地形渲染 33814.7 本章小结 346第15章 基本3D渲染引擎类 34715.1 场景管理类CGameEngine_SceneManager 34715.2 纹理处理类CGameEngine_Texture 35715.3 顶点处理类CGameEngine_VertexBuffer 35915.4 光照处理类CGameEngine_Light 36315.5 材质处理类CGameEngine_Material 36615.6 本章小结 368第16章 天空和广告牌技术 36916.1 矩形面天空 36916.2 球面天空 37816.3 广告牌技术 38616.4 本章小结 391第17章 雾化处理 39217.1 雾化原理 39217.2 雾化融合 39317.3 雾化颜色 39417.4 选择雾化模式 39417.5 顶点雾化 39417.6 像素雾化 39717.7 本章小结 398第18章 文字和能量格渲染 39918.1 ID3DXFont接口的应用 39918.2 字体引擎类CGameEngine_Font 40018.3 能量格引擎类CGameEngine_EnergyBar 40418.4 实例:文字和能量格渲染 40818.5 本章小结 414第19章 粒子系统 41519.1 用Point Sprite实现粒子 41519.2 粒子引擎类CGameEngine_Particle 41719.3 实例:爆炸粒子渲染 42519.4 本章小结 427第20章 Stencil蒙板阴影处理 42820.1 Stencil蒙板缓冲区 42820.2 平面阴影计算 43120.3 实例:平面阴影渲染 43320.4 ShadowMap阴影映射图技术 44320.5 ShadowVolume阴影体技术 44520.6 本章小结 448第21章 DirectSound声音播放 44921.1 声音的播放原理 44921.2 创建IDirectSound8对象 45121.3 设置设备的协调级别 45121.4 Primary主缓冲区的创建 45221.5 Secondary次缓冲区的创建 45421.6 装入声音数据到次缓冲区 45721.7 声音的播放与控制 45821.8 CGameEngine_Sound声音引擎类 46021.9 实例:DirectSound的声音渲染 46621.10 3D声效的使用 46821.11 本章小结 472 -
C++实现问题求解(美)萨维奇本书是畅销书作家WalterSavitch的一部力作,涵盖了C++和基本程序设计方法的内容,帮助学生深刻理解基本程序设计工具以构造自定义类。本版编写体例适用于教学,各章内容相对独立且不失连贯性。内容清晰,编写方式友好,注重适合学生阅读。书中内容符合最新ANSI/ISOC++编译标准。各知识点有明显框式标注的总结性文字。本版增加了关于继承、异常处理和标准模板库的内容。用案例学习和实例讲解程序设计方法、C++专题和良好的编程习惯,含有习题教学、程序设计项目、程序设计技巧、程序缺陷诊断等内容。各章有丰富的自测试题并配有答案。本书提供网上支持教学资源http://www.aw.com/codemate。本书适用于高等院校本科计算机及相关专业的高级语言程序设计类课程。 -
Visual C++开发实用编程200例武莹, 彭文明编著Visual C++作为Visual Studio产品的一部分,是一个功能很强大的综合性集成软件开发环境,对众多应用领域(网络、多媒体、数据库等)都有很好的支持,Visual C++是广大软件开发人员特别是系统程序员做开发的首选平台。 本书包括7部分,涉及Windows界面、窗口、单/多文档结构、网络、数据库、Win32 API、文件、注册表、音频、视频等多个领域内容,分为30章,海量地收集了200多个实例,每个实例的分析力求言简意赅,所有源程序均包含在本书所附光盘中,并尽可能做到注释清楚,方便阅读参考。 本书适合广大程序员学习参考,也适合有一定编程基础的初学者学习。 -
数据结构实用教程徐孝凯编著本书是为全国高等院校计算机专业及相关专业开设数据结构课程而精心组织和编著的一本实用教材。本书从软件开发的实际需要出发,按照结构化和面向对象的程序设计思想,深入介绍了计算机处理的对象——数据的各种逻辑结构、存储结构以及进行查找、插入、删除、排序等运算的算法;对于每一种算法都利用了当前最流行和实用的 C/C++语言进行了具体实现,并全部上机通过;对于重点和难点内容,通过循序渐进的分析并结合事例加以说明,使得读者容易理解、掌握和运用。本书在内容安排上前后一致,连贯有序、层次分明、便于自学。另外,本书具有丰富的练习题,并配有习题参考解答一书同时出版。 -
C++高级编程(美)Nicholas A.Solter,(美)Scott J.Kleper著;刘鑫,杨健康等译;刘鑫译本书既系统全面又突出重点,作者从C++基础知识讲起,始终着眼于C++语言的编程实践,提供了大量实践示例和解决方案,包括如何更好地实现重用、如何有效地测试和调试等C++专业人员常用的一些技术与方法,还提供了一些鲜为人知的、能大大简化工作的C++语言特性;最后,还配有大量可重用的编码模式,并在附录中提供C++面试宝典作为开发人员的实用指南。本书面向进阶C++的初学者,以及那些想把C++水平提高到专业水准的程序员和开发人员。本书主要内容:● 不同的编程方法和高质量的编程风格● 充分利用C++完成大型软件开发的各种方法● 确保无错代码的方法● 认识面向对象设计● 使用库和模式来提高编程效率、提高编程质量的若干方法● C++中管理内存的最佳方法● 输入/输出技术 -
C程序设计上机指导与练习郑军红本书是《C程序设计》一书的配套参考教材,主要包括了以下四个方面的内容:第一部分详细介绍了Win-TC的使用方法及环境设置。第二部分针对C语言的学习内容,由浅至深设置了20个实验,介绍了程序调试和编程方法的初步知识,以便进行实践教学。第三部分结合章节学习内容及计算机二级考试要求,设置了15套练习题。这些练习题内容丰富并且具有很强的灵活性和应用性,读者可以根据自己的情况进行练习或自测。第四部分为附录,详细介绍了C语言二级考试大纲和Turbo C上机过程。本书作为《C程序设计》一书的配套教材,具有很强的通用性和实用性。书中详细介绍了Win-TC编译程序和Turbo C编译程序,并设置了多个实验和多套练习题供读者参考使用。本书可作为普通本科院校、普通高等专科学校的计算机辅助教材,也可以作为计算机培训和计算机等级考试辅导教学用书。 -
Visual C++实践与提高原奕等编著本书适合于有一定Visual c++开发经验、希望学习使用ADO技术开发Visual c++数据库应用程序的读者。 的新版本。该版本包括如下功能:集成开发环境(IDE)、完整的面向对象功能、可视化编程和继承等重要功能,并介绍了功能强大的ADO.NET数据库访问技术。在综合开发实例应用中对工程背景的调研以及数据库的抽象建模、实体对象的建模、系统的需求分析和实现方法以及相关技术作了较为详尽的阐述。 全书理论与实际相结合,实例丰富精彩,具有较强的实用性。从本书中读者不仅能够掌握使用Visual Basic.NET编程开发的技巧,同时也能够对Visual Basic.NET中纷繁晦涩的概念作进一步的了解。 本书不仅适用于使用Visual Basic.NET进行软件开发的具有编程经验的广大软件开发人员,也适合于高等院校师生学习和参考使用,特别对高校计算机专业的学生进行毕业设计具有非常好的参考价值,也可作为广大计算机编程爱好者的自学本参考用书。 -
C++程序设计刘天印,李福亮 主编C++语言作为一门优秀语言,其严密的语法和强大的功能影响了随后出现的所有编程语言(如Java和C#等)。.本书循序渐进地介绍了C++程序设计的各个方面,主要内容有:C++语言与面对向对象概述、基本数据类型及表达式、C++与结构化程序设计、数组、函数与预处理、指针、构造数据类型、类与对象、继承与派生、多态性、I/O流与文件、模板与异常处理等。本书结构合理、应用性强,各章都有内容提要、学习目标、实例分析和归纳小结,示例简易而典型,课后还有丰富的编程练习。..本书由教学一线的资深教师编写,浅显易懂、图文并茂,适合作为各类高等院校C++语言或面向对象程序设计课程的教材,也可作为教师、学生或程序开发人员的参考书。... -
C++学习与实验指导秦军C++程序设计语言具有强大的功能,它是从C语言发展演变而来的,是C语言的超集,是一种面向对象的程序设计语言。目前它已经在各个领域得到广泛的应用,成为开发大型软件时首选的一种程序设计语言。本书分为两部分:第一部分为“学习指导”,首先是“知识要点”,强化对各章节的知识点的认识;其次是“例题解析”,通过一些典型的例题的解析,帮助读者掌握Visual C++程序设计的方法和技巧,最后通过精心组织的精选习题让读者进行练习,以巩固对已学的知识点的掌握;第二部分为“实验指导”,包括9个精心设计的实验。每一个实验都包括“实验目的”、“实验实例”、“实验内容”、“实验指导”和“思考题”。此外,书后还有一个附录“常用系统函数”列出了C++中的常用库函数及其说明,可以作为简明函数手册使用。
