出版时间:2013-9 出版社:电子工业出版社 作者:亓永刚
内容概要
本书由浅入深,全面、系统地介绍了Visual C++开发技术。本书提供了大量实例,供读者实战演练。本书涉及面广,从基本操作到高级技术和核心管理,再到项目开发,几乎涉及C++开发的所有重要知识。另外,作者为帮助读者更好地学习本书内容,将书中的示例源代码收录于本书的配书光盘中。
全书共分17章。主要内容有C++入门、安装和配置Visual C++ 6.0、变量和基本数据类型、运算符和表达式、程序控制结构、数组、函数、函数的高级应用、编译预处理、指针、构造数据类型、类、类的初始化和赋值及析构、模板、进行面向对象程序设计、人事管理系统、点歌管理系统。
本书适合所有想全面学习C++开发技术的人员阅读,也适合各种使用Visual C++进行开发的工程技术人员使用。对于经常使用Visual C++做开发的人员,更是一本不可多得的案头必备参考书。
书籍目录
第1章 概览全局:C++入门 1
1.1 C++概述 2
1.1.1 C++的历史沿革 2
1.1.2 C++与面向对象 2
1.1.3 从C到C++ 3
1.2 程序设计方法 4
1.2.1 结构化程序设计 4
1.2.2 面向对象程序设计 5
1.2.3 程序设计方法比较 6
1.3 C++开发环境——Visual C++ 6.0 7
1.3.1 工作区 8
1.3.2 编辑区 9
1.3.3 输出窗口 9
1.3.4 菜单栏、工具栏和状态栏 10
1.4 C++源程序组成元素 16
1.4.1 基本组成 16
1.4.2 基本符号 17
1.4.3 标识符 17
1.4.4 保留字 18
1.4.5 分隔符 18
1.5 Visual C++ 6.0项目中文件类型的说明 18
1.6 小结 19
1.7 习题 20
第2章 装备拾取:安装、配置 Visual C++ 6.0 21
2.1 在Windows 7中安装Visual C++ 6.0 22
2.1.1 系统要求 22
2.1.2 在Windows 7中安装Visual C++ 6.0和Installshield 22
2.1.3 彻底解决Windows 7下安装Visual C++ 6.0的兼容性问题 33
2.2 配置Visual C++ 6.0 37
2.2.1 环境设置(Environment Settings) 37
2.2.2 工作区域设置(Workspace Settings) 39
2.2.3 工程设置(Project Settings) 41
2.2.4 快捷键(Shortcut-key) 43
2.3 第一个C++程序—HelloWorld 44
2.4 小结 50
2.5 习题 51
第3章 桩步必练:变量和基本数据类型 52
3.1 常量 53
3.1.1 字面值常量 53
3.1.2 符号常量(#define) 55
3.1.3 常值变量 56
3.1.4 常量的应用 57
3.2 变量 62
3.2.1 声明变量 62
3.2.2 变量的命名规则 63
3.2.3 变量的存储时间和作用域 65
3.2.4 变量的应用 69
3.3 基本数据类型 70
3.3.1 整型 71
3.3.2 字符型 73
3.3.3 浮点型 75
3.3.4 布尔型 76
3.4 类型转换 78
3.4.1 隐式转换 78
3.4.2 显式转换 79
3.4.3 C++的4种数据类型转换操作符 81
3.5 知识深化 84
3.6 小结 88
3.7 习题 88
第4章 桩步进阶:运算符和表达式 90
4.1 运算符 91
4.1.1 算术运算符 91
4.1.2 赋值运算符 94
4.1.3 关系运算符 95
4.1.4 逻辑运算符 97
4.1.5 条件运算符 98
4.1.6 逗号运算符 100
4.1.7 位运算符 100
4.1.8 sizeof运算符 106
4.1.9 运算符的优先级 107
4.2 表达式 109
4.2.1 算术表达式 109
4.2.2 关系表达式 110
4.2.3 逻辑表达式 111
4.2.4 条件表达式 112
4.2.5 赋值表达式 113
4.2.6 逗号表达式 115
4.3 语句 115
4.3.1 语句中的空格 116
4.3.2 空语句 117
4.3.3 声明语句 117
4.3.4 赋值语句 117
4.4 小结 118
4.5 习题 118
第5章 初养内力:程序控制结构 121
5.1 顺序结构 122
5.1.1 表达式语句 122
5.1.2 输入语句 123
5.1.3 输出语句 124
5.1.4 格式控制符 125
5.1.5 应用示例 129
5.2 选择结构 130
5.2.1 if语句 130
5.2.2 ifelse语句 131
5.2.3 多重if…else语句 133
5.2.4 switch语句 135
5.2.5 应用示例 138
5.3 循环结构 140
5.3.1 for语句 140
5.3.2 while语句 141
5.3.3 dowhile语句 143
5.3.4 多重循环 144
5.3.5 应用示例 145
5.4 转向语句 147
5.5 小结 148
5.6 习题 149
第6章 小有功底:数组 151
6.1 数组概述 152
6.1.1 数组的基本概念 152
6.1.2 一维数组 153
6.1.3 二维数组 153
6.2 数组的声明及初始化 154
6.2.1 声明一维数组 154
6.2.2 初始化一维数组 154
6.2.3 声明二维数组 156
6.2.4 初始化二维数组 156
6.3 引用数组元素 158
6.3.1 引用一维数组元素 158
6.3.2 引用二维数组元素 161
6.3.3 应用示例 162
6.4 字符串 163
6.4.1 字符数组 163
6.4.2 字符串 164
6.4.3 字符数组与字符串的区别 166
6.5 字符串处理函数 167
6.5.1 strcmp()函数—字符串比较 167
6.5.2 strcpy()函数—字符串复制 168
6.5.3 strcat()函数—字符串连接 169
6.5.4 strlen()函数—计算字符串长度 171
6.5.5 gets()和puts()函数—字符串输入/输出 172
6.6 数组综合应用 173
6.7 小结 176
6.8 习题 177
第7章 一招一式:函数 180
7.1 函数概述 181
7.1.1 函数的基本概念 181
7.1.2 函数的分类 182
7.1.3 函数的组成 183
7.2 函数的声明和定义 183
7.2.1 声明函数 183
7.2.2 定义函数 185
7.2.3 头文件和实现文件的分离 186
7.3 函数参数传递 189
7.3.1 形参和实参 189
7.3.2 值传递 190
7.3.3 地址传递 192
7.4 函数的调用 193
7.4.1 函数调用过程 193
7.4.2 无参函数的调用 194
7.4.3 带参函数的调用 195
7.4.4 默认形参值的函数调用 197
7.4.5 嵌套调用 199
7.5 递归 201
7.5.1 直接递归 201
7.5.2 间接递归 203
7.6 main()函数 205
7.6.1 不带参数的main()函数 205
7.6.2 带参数的main()函数 206
7.7 内联函数 208
7.8 函数综合应用 209
7.9 小结 212
7.10 习题 212
第8章 内外相形:函数的高级应用 215
8.1 数组作为函数参数 216
8.1.1 传递一维数组参数 216
8.1.2 传递多维数组参数 217
8.2 查找的函数实现 219
8.2.1 顺序查找的函数实现 219
8.2.2 折半查找的函数实现 221
8.3 排序的函数实现 223
8.3.1 冒泡排序的函数实现 223
8.3.2 快速排序的函数实现 225
8.4 函数模板 227
8.4.1 引入函数模板 227
8.4.2 定义函数模板 228
8.4.3 实例化函数模板 229
8.4.4 应用示例 231
8.5 函数重载 232
8.5.1 函数重载概述 232
8.5.2 参数类型不同的函数重载 233
8.5.3 参数个数不同的函数重载 235
8.5.4 应用示例 236
8.6 函数高级应用 238
8.7 小结 240
8.8 习题 240
第9章 排除杂念:编译预处理 242
9.1 预处理命令 243
9.2 宏 243
9.2.1 宏概述 243
9.2.2 不带参数的宏定义 244
9.2.3 取消宏 245
9.2.4 宏嵌套 247
9.2.5 带参数的宏定义 248
9.2.6 内联函数 253
9.2.7 宏与函数的区别 254
9.3 文件包含 256
9.3.1 #include命令 256
9.3.2 合理使用文件包含 257
9.4 条件编译 258
9.4.1 #ifdef形式 259
9.4.2 #ifndef形式 260
9.4.3 #if形式 261
9.5 其他命令 262
9.5.1 #error命令 262
9.5.2 #line命令 263
9.6 小结 263
9.7 习题 264
第10章 游刃沙场:指针 267
10.1 指针概述 268
10.1.1 指针是什么 268
10.1.2 定义指针 269
10.1.3 指针的初始化 269
10.2 指针的运算 271
10.2.1 取地址与取值运算 271
10.2.2 指针的算术运算 273
10.2.3 指针的关系运算 275
10.2.4 指针的赋值运算 276
10.2.5 void指针和const指针 277
10.3 指针与数组 278
10.3.1 访问数组元素的方法 279
10.3.2 多维数组元素的访问 281
10.3.3 数组指针与指针数组 282
10.4 指针与函数 284
10.4.1 指针作为函数参数 284
10.4.2 指针型函数 286
10.4.3 函数指针 287
10.5 指针与字符串 289
10.6 二级指针 291
10.7 小结 292
10.8 习题 292
第11章 合众家之长:构造数据类型 294
11.1 结构体 295
11.1.1 结构体概述 295
11.1.2 结构体类型声明 296
11.1.3 定义结构体类型变量 297
11.1.4 初始化结构体变量 299
11.1.5 引用结构体成员变量 301
11.1.6 结构体作为函数参数 303
11.2 共用体 304
11.2.1 共用体类型声明 304
11.2.2 定义共用体类型变量 305
11.2.3 引用共用体成员变量 306
11.3 枚举 308
11.3.1 定义枚举类型 308
11.3.2 定义枚举类型变量 310
11.3.3 引用枚举类型变量 311
11.4 类型重定义typedef 312
11.5 位域 315
11.5.1 定义位域变量 315
11.5.2 使用位域 316
11.6 小结 318
11.7 习题 318
第12章 法门初触:类 320
12.1 类的定义 321
12.1.1 数据成员 321
12.1.2 成员函数 322
12.1.3 成员访问 323
12.1.4 友元 324
12.1.5 类声明和类定义 326
12.2 类与对象 326
12.3 类成员函数 328
12.3.1 内联成员函数 328
12.3.2 const对象和const成员函数 330
12.4 隐含的this指针 332
12.5 静态类成员 335
12.5.1 静态数据成员 335
12.5.2 静态成员函数 336
12.6 指向类成员的指针 337
12.6.1 指向数据成员的指针 337
12.6.2 指向成员函数的指针 338
12.7 局部类 340
12.8 嵌套类 340
12.9 小结 342
12.10 习题 342
第13章 小有成就:类的初始化、 赋值和析构 344
13.1 类的初始化 345
13.2 类的构造函数 346
13.2.1 缺省构造函数 347
13.2.2 限制对象创建 351
13.2.3 拷贝构造函数 352
13.2.4 深拷贝和浅拷贝 356
13.2.5 构造函数调用顺序 358
13.3 类的析构 359
13.3.1 一般析构函数 359
13.3.2 虚析构函数 361
13.4 小结 364
13.5 习题 364
第14章 以一敌百:模板 368
14.1 模板的概念 369
14.2 函数模板与模板函数 370
14.2.1 函数模板 370
14.2.2 模板函数 372
14.3 类模板 375
14.3.1 类模板 375
14.3.2 模板类 377
14.3.3 类模板实例化 379
14.3.4 类模板的成员函数 382
14.3.5 类模板中的友元声明 384
14.4 小结 386
14.5 习题 387
第15章 形神合一:进行面向对象程序设计 392
15.1 什么是面向对象程序设计 393
15.1.1 面向对象程序设计的优点 393
15.1.2 面向对象程序设计的基本概念 395
15.2 数据的抽象与封装 399
15.2.1 类的抽象 400
15.2.2 类的封装 400
15.3 派生与继承 402
15.3.1 派生类的概念 402
15.3.2 派生类的构造和析构 405
15.3.3 基类成员在派生类中的访问权限 409
15.3.4 多重继承与继承链 411
15.3.5 二义性问题 415
15.4 多态性 420
15.4.1 多态的概念 420
15.4.2 函数重载 421
15.4.3 运算符重载 422
15.4.4 虚函数 426
15.5 小结 433
15.6 习题 434
第16章 实战提高一:人事管理系统 440
16.1 开发背景 441
16.2 系统分析 441
16.2.1 需求分析 441
16.2.2 项目人员分配 441
16.3 系统设计 442
16.3.1 系统目标 442
16.3.2 系统模块结构 442
16.3.3 开发环境与运行环境 444
16.3.4 系统预览 444
16.4 数据库设计 447
16.4.1 数据库分析 447
16.4.2 管理系统E-R图 448
16.4.3 数据库、表的设计 449
16.4.4 数据表的关系图 452
16.5 职工模块设计 453
16.5.1 职工模块功能分析 453
16.5.2 职工模块技术分析 453
16.5.3 职工添加的实现 454
16.5.4 职工删除的实现 459
16.5.5 职工修改的实现 463
16.5.6 职工查询的实现 464
16.6 考勤模块设计 465
16.6.1 考勤功能分析 465
16.6.2 考勤技术分析 465
16.6.3 考勤管理的实现 466
16.6.4 考勤的统计、查询与删除 469
16.7 工资模块设计 473
16.7.1 工资模块功能分析 473
16.7.2 工资模块技术分析 473
16.7.3 工资计算的实现 473
16.7.4 工资基本信息的设置 475
16.7.5 工资统计查询 479
16.8 系统模块设计 483
16.8.1 系统模块功能分析 483
16.8.2 系统模块技术分析 483
16.8.3 用户添加的实现 484
16.8.4 用户注销的实现 486
16.8.5 数据库备份的实现 487
16.8.6 数据库还原的实现 488
16.9 系统部署和运行 490
16.9.1 系统安装配置 490
16.9.2 数据库建立及用户参数定制 490
16.10 开发注意点总结 490
16.11 小结 491
第17章 实战提高二:点歌管理系统 492
17.1 开发背景 493
17.2 系统分析 493
17.2.1 需求分析 493
17.2.2 可行性分析 493
17.2.3 项目人员分配 494
17.3 系统设计 495
17.3.1 系统目标 495
17.3.2 系统模块结构 495
17.3.3 开发环境与运行环境 496
17.3.4 点歌管理系统预览 496
17.4 数据库设计 501
17.4.1 数据库分析 501
17.4.2 管理系统E-R图 501
17.4.3 数据库、表的设计 502
17.4.4 数据表的关系图 505
17.5 系统框架设计 506
17.5.1 系统框架功能分析 506
17.5.2 系统框架技术分析 506
17.5.3 系统框架界面的设计 506
17.5.4 系统框架界面的实现 507
17.6 歌曲单击设计 511
17.6.1 歌曲单击功能分析 511
17.6.2 歌曲单击技术分析 512
17.6.3 各模块界面的设计 512
17.6.4 开户点歌的实现 513
17.6.5 按歌手查询的实现 516
17.6.6 按拼音查询的实现 520
17.6.7 按歌曲名字数查询的实现 521
17.6.8 按歌曲类别查询的实现 524
17.7 播放控制模块设计 524
17.7.1 播放控制模块功能分析 525
17.7.2 播放控制模块技术分析 525
17.7.3 播放控制模块界面设计 525
17.7.4 播放控制模块的实现 525
17.8 后台模块设计 530
17.8.1 后台模块功能分析 530
17.8.2 后台模块技术分析 531
17.8.3 后台模块界面设计 531
17.8.4 歌曲属性数据获取的实现 532
17.8.5 管理员密码修改的实现 537
17.9 结账模块设计 540
17.9.1 结账模块功能分析 540
17.9.2 结账模块技术分析 540
17.9.3 结账模块界面设计 540
17.9.4 歌曲计费的实现 541
17.9.5 打印回单的实现 542
17.10 系统部署和运行 542
17.10.1 系统安装配置 542
17.10.2 数据库建立及用户参数定制 543
17.11 知识点汇总 543
17.12 小结 544
图书封面
评论、评分、阅读与下载