请输入您要查询的百科知识:

 

词条 C++游戏编程
释义

基本信息

C++游戏编程

作者:邹吉涛、姚雷、易巧玲

ISBN:9787302245919

定价:50元

印次:1-1

装帧:平装

印刷日期:2011-1-7

内容简介

本书介绍如何用C++语言进行游戏程序开发。全书可分为C++语言的基础语法、面向对象编程技术、标准模板库的应用三个部分,共18章,主要内容包括:概观程序设计,开发环境简介,基本数据类型,运算符与表达式,程序的结构,宏和编译预处理,数组,函数与程序结构,指针和引用,结构、联合、枚举,类与对象,静态成员与友元,继承与多态,运算符重载,模板,标准模板库,I/O流,异常处理等。

本书适合游戏开发人员及游戏相关专业师生学习使用,也可供C++编程爱好者参考。

目录

第1章 概观程序设计 1

1.1 程序设计发展历程 1

1.1.1 什么是计算机程序 1

1.1.2 计算机程序语言的发展历史 2

1.2 程序设计思想 4

1.2.1 结构化程序设计思想 4

1.2.2 面向对象程序设计思想 5

本章小结 8

第2章 开发环境简介 9

2.1 Visual Studio .NET集成开发环境 9

2.1.1 创建项目 10

2.1.2 创建文件 12

2.1.3 项目属性设置 12

2.1.4 编译和运行 13

2.1.5 调试 14

2.1.6 辅助工具 14

2.1.7 解决方案资源管理器 18

2.1.8 类视图 19

2.1.9 文件视图 20

2.1.10 资源视图 20

2.1.11 帮助文档的使用 28

2.2 Linux下的开发环境 28

2.2.1 Vi编辑器的基本使用 29

2.2.2 Vi编辑器的命令 29

2.2.3 Vi编辑器环境设置 32

2.2.4 g++编译程序的方法 33

2.2.5 g++编译程序的选项 33

2.2.6 运行应用程序 38

2.2.7 帮助文档的使用 38

2.3 CodeBlocks集成开发工具介绍 38

2.3.1 创建工程 39

2.3.2 创建文件 39

2.3.3 项目属性设置 39

2.3.4 编译及运行 40

2.4 绘图函数库的使用 41

本章小结 41

第3章 基本数据类型 42

3.1 基本程序组成结构 42

3.1.1 一个基本的C++程序 42

3.1.2 基本输入输出 43

3.2 字符集和关键字 47

3.3 C++的数据类型概述 49

3.4 基本数据类型 51

3.4.1 整型数据 51

3.4.2 浮点型数据 52

3.4.3 字符型数据 53

3.4.4 bool类型 56

3.4.5 void类型 58

3.4.6 常量与变量 58

3.5 类型转换 61

3.5.1 隐式类型转换 62

3.5.2 强制类型转换 64

本章小结 64

第4章 运算符与表达式 66

4.1 概述 66

4.2 运算符和表达式 66

4.2.1 运算符和表达式的种类 66

4.2.2 左值和右值 67

4.3 算术运算符和算术表达式 68

4.4 自增和自减运算符 69

4.5 赋值运算符和赋值表达式 71

4.5.1 赋值运算符与赋值运算 71

4.5.2 复合赋值运算符 72

4.5.3 赋值表达式 72

4.6 关系运算符和关系表达式 73

4.7 逻辑运算符和逻辑表达式 75

4.7.1 逻辑运算符 75

4.7.2 逻辑表达式 76

4.8 sizeof运算符 76

4.9 条件运算符和条件表达式 77

4.10 逗号运算符和逗号表达式 78

4.11 优先性和结合性 79

本章小结 80

习题 80

第5章 程序的结构 81

5.1 顺序结构 81

5.2 分支结构程序设计 82

5.2.1 if…else…结构 82

5.2.2 switch语句 86

5.2.3 goto语句 89

5.3 循环结构程序设计 90

5.3.1 for语句 90

5.3.2 while语句 94

5.3.3 do-while语句 96

5.3.4 循环的嵌套 97

5.4 break、continue语句 98

5.4.1 break语句 98

5.4.2 continue语句 100

本章小结 101

习题 101

第6章 宏和编译预处理 102

6.1 宏定义 103

6.2 头文件包含 108

6.3 条件编译 110

6.4 其他预处理指令 115

本章小结 119

习题 119

第7章 数组 120

7.1 为何需要数组 120

7.2 声明数组 121

7.3 访问数组元素 122

7.4 数组的初始化 124

7.5 数组应用举例 125

7.5.1 选择排序 125

7.5.2 冒泡排序 127

7.5.3 更多排序算法 129

7.6 字符串与字符数组 131

7.7 数组作为函数参数 133

7.8 二维数组 134

7.8.1 二维数组的定义 134

7.8.2 二维数组中元素的引用 135

7.8.3 二维数组的初始化 135

7.8.4 二维数组程序举例 136

7.9 多维数组 138

7.9.1 多维数组的定义 139

7.9.2 多维数组的引用 139

本章小结 141

习题 141

第8章 函数与程序结构 142

8.1 函数的概念 142

8.2 函数定义 143

8.3 函数声明 145

8.4 函数调用 147

8.5 变量的作用域类型 149

8.5.1 局部变量 149

8.5.2 全局变量 151

8.6 变量的存储类型 152

8.6.1 动态存储变量 152

8.6.2 静态存储变量 153

8.7 函数返回值 153

8.8 默认函数参数 155

8.9 内联函数 158

8.10 函数重载 160

8.11 作用域 163

8.11.1 局部作用域 163

8.11.2 函数作用域 164

8.11.3 函数原型作用域 165

8.12 可见性与生命期 165

8.12.1 可见性 165

8.12.2 生命期 167

8.12.3 补充说明 168

8.13 综合应用举例 168

8.14 递归函数 170

8.14.1 递归函数举例 170

8.14.2 递归调用过程分析 171

8.14.3 递归程序设计方法 172

8.15 程序文件结构 174

8.15.1 头文件 174

8.15.2 文件作用域 176

8.15.3 多文件结构 176

8.15.4 外部存储类型 177

本章小结 179

习题 179

第9章 指针和引用 180

9.1 指针的概念 180

9.2 指针声明和赋值 182

9.3 通过指针访问数据 185

9.4 指针运算 187

9.5 动态内存分配 190

9.5.1 malloc()和free()函数 191

9.5.2 new和delete运算符 193

9.5.3 指针与数组 194

9.6 动态内存分配的应用 198

9.6.1 应用举例1 198

9.6.2 应用举例2 199

9.7 const指针 204

9.8 指针作为函数参数 208

9.9 指针函数 213

9.10 函数指针 215

9.11 指针数组 219

9.12 指向指针的指针 223

9.13 常见的内存错误及其对策 226

9.14 引用的定义 227

9.15 使用引用访问数据 232

9.16 引用与指针对比 235

9.17 引用做函数的参数 236

9.18 应用举例3 239

9.19 返回引用 240

9.20 函数调用作为左值 244

9.21 const限定的引用 246

9.22 返回堆中变量的引用 248

本章小结 250

习题 250

第10章 结构、联合、枚举 252

10.1 自定义数据类型概述 252

10.2 结构的定义 253

10.3 结构初始化 255

10.4 访问结构成员 257

10.5 结构与数组 258

10.6 结构与指针 264

10.7 结构与引用 266

10.8 在函数中使用结构 267

10.9 结构的复杂形式 273

10.10 链表 275

10.11 联合 279

10.12 枚举 285

本章小结 294

习题 294

第11章 类与对象 296

11.1 抽象概述 296

11.2 类的概念 297

11.3 类的定义 298

11.3.1 类与结构 298

11.3.2 类的声明 299

11.3.3 类成员的访问控制 300

11.3.4 数据成员 303

11.3.5 成员函数 304

11.3.6 重载成员函数 306

11.3.7 类定义的注意事项 307

11.3.8 类声明和类定义 308

11.4 对象 309

11.4.1 类与对象的区别和联系 309

11.4.2 对象的声明 309

11.4.3 访问数据成员 310

11.4.4 调用成员函数 310

11.5 综合应用 313

11.6 构造函数 314

11.6.1 为何需要构造函数 314

11.6.2 构造函数的定义 316

11.6.3 带参数构造函数 317

11.6.4 默认构造函数 318

11.6.5 重载构造函数 319

11.7 类对象成员的初始化 320

11.8 析构函数 323

11.8.1 为何需要析构函数 323

11.8.2 析构函数的定义 324

11.8.3 何时需要使用析构函数 325

11.9 堆栈和内存分配 325

11.9.1 内存管理概述 325

11.9.2 变量与对象的空间分配时机与初始化327

11.9.3 为什么使用new/delete操作符 328

11.10 拷贝构造函数 329

11.10.1 程序出错的原因分析 329

11.10.2 拷贝构造函数 332

11.10.3 默认拷贝构造函数 334

11.10.4 浅拷贝与深拷贝 334

11.11 临时对象和无名对象 337

11.11.1 临时对象 337

11.11.2 无名对象 338

11.12 const成员 339

本章小结 340

习题 341

第12章 静态成员与友元 342

12.1 静态成员 342

12.1.1 为何需要静态成员 342

12.1.2 静态成员变量 343

12.1.3 静态成员函数 345

12.2 友元 346

12.2.1 为何需要友元 346

12.2.2 友元函数 347

12.2.3 友元类 348

第13章 继承与多态 351

13.1 继承与派生的概念 352

13.2 继承的实现方式 354

13.3 继承类的构造与析构 355

13.3.1 继承类的构造 355

13.3.2 构造函数的参数传递 357

13.4 基类访问控制 360

13.5 多态与虚函数 362

13.5.1 为什么使用虚函数 363

13.5.2 虚函数 364

13.5.3 重载、隐藏与覆盖 365

13.5.4 虚函数的限制 368

13.6 多继承 370

13.6.1 多继承的实现 371

13.6.2 多继承的二义性 371

13.6.3 多继承的构造顺序 373

13.7 虚基类 374

13.7.1 虚基类的定义 375

13.7.2 虚基类的构造函数和初始化376

本章小结 376

习题 377

第14章 运算符重载 378

14.1 为何要重载运算符 378

14.2 运算符重载的实现 379

14.2.1 成员函数运算符重载 380

14.2.2 友元函数运算符重载 382

14.3 单目运算符和双目运算符 383

14.4 引用返回和值返回 386

14.5 常见的运算符重载 391

14.5.1 赋值与比较运算符 391

14.5.2 递增与递减运算符 392

14.5.3 数组存取标识符 393

本章小结 395

习题 395

第15章 模板 396

15.1 为何需要模板 396

15.2 函数模板 397

15.2.1 函数模板的概念 397

15.2.2 函数模板的定义 398

15.2.3 函数模板的实例化 399

15.2.4 重载模板函数 399

15.3 类模板 401

15.3.1 类模板的定义 401

15.3.2 使用类模板 403

15.4 综合应用 404

本章小结 406

第16章 标准模板库 407

16.1 标准模板库的基本组成 407

16.2 标准命名空间 408

16.3 容器 409

16.3.1 顺序容器 409

16.3.2 关系式容器 411

16.4 迭代器 413

16.5 算法 415

本章小结 418

第17章 I/O流 419

17.1 流的概念 419

17.2 I/O标准流类 421

17.2.1 标准流的设备名 421

17.2.2 原理 421

17.3 输入输出的格式控制 423

17.3.1 用ios类的成员函数进行格式控制 423

17.3.2 使用格式控制符进行格式控制 427

17.4 输入输出运算符的重载 429

17.4.1 重载输出运算符 429

17.4.2 重载输入运算符 430

17.5 文件流 431

17.5.1 打开文件 432

17.5.2 关闭文件 434

17.5.3 写入文件 435

17.5.4 读取文件 435

17.5.5 常用操作和状态检测 436

17.5.6 读写随机文件 438

17.5.7 二进制文件的处理 440

本章小结 442

习题 442

第18章 异常处理 443

18.1 传统的错误处理方式 443

18.2 异常处理的思想 445

18.3 异常处理的实现方式 447

18.4 构造和析构中的异常抛出 448

18.5 异常规格说明 449

18.6 标准异常 451

本章小结 452

附录A 程序的写作风格 453

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/11/15 22:26:06