C++从入门到精通

978-7-115-50656-6
作者: 谭玉波主编 吴勇 韩璐
译者:
编辑: 张翼
分类: C++

图书目录:

第 Ⅰ 篇基础知识

第 1 章 开始C++编程之旅——C++概述

1.1 OOP面向对象编程 003

1.1.1 OOP的含义 003

1.1.2 面向对象编程 003

1.1.3 C++的特点 003

1.2 程序设计概述 004

1.2.1 结构化程序设计 004

1.2.2 面向对象程序设计 005

1.3 C、C++与Visual C++ 005

1.3.1 C与C++ 005

1.3.2 C++与Visual C++ 006

1.3.3 C++初学者建议  006

1.4 C++程序开发环境 006

1.4.1 基本概念 006

1.4.2 C++程序开发过程 007

1.4.3 C++开发环境介绍 008

1.4.4 Code::Blocks开发环境安装与部署 009

1.5 第 一个C++程序——“Hello,world!”输出 011

1.5.1 创建源程序 011

1.5.2 编译、连接和运行程序 012

1.5.3 常见错误 013

1.5.4 创建并运行多文件程序 014

1.5.5 打开已有文件 018

1.6 综合案例 019

1.7 疑难解答 020

第 2 章 C++程序的基本组成

2.1 C++程序 022

2.1.1 预处理命令 022

2.1.2 函数 023

2.1.3 注释 024

2.1.4 main函数 024

2.1.5 命名空间 024

2.1.6 cout进行标准输出 025

2.1.7 变量声明与赋值 025

2.1.8 cin进行标准输入 025

2.2 C++代码编写规范 025

2.2.1 代码写规范的必要性 025

2.2.2 将代码书写规范 025

2.3 算法是程序的核心 026

2.3.1 算法的概念 026

2.3.2 流程图表示算法 026

2.4 综合案例 027

2.5 疑难解答 028

第 3 章 标识符和数据类型

3.1 标识符  030

3.1.1 C++中的保留字 030

3.1.2 C++中的命名规则 031

3.2 数据类型  031

3.2.1 整型 032

3.2.2 浮点型 032

3.2.3 字符型 032

3.2.4 布尔型 033

3.3 常量 033

3.3.1 输出常量 033

3.3.2 宏定义的符号常量 035

3.3.3 const常量 037

3.4 变量 037

3.4.1 变量的定义 038

3.4.2 变量的赋值 038

3.4.3 变量的生存周期 042

3.5  数据类型转换 042

3.6 复合数据类型 046

3.6.1 数组 046

3.6.2 字符串 047

3.6.3 结构体 048

3.7 综合案例 050

3.8 疑难解答 051

第 4 章 C++运算符和表达式

4.1 C++中的运算符和表达式 054

4.1.1 运算符 054

4.1.2 表达式 054

4.2 算术运算符和表达式 055

4.2.1 基本算术运算符 055

4.2.2 算术运算符和算术表达式 055

4.2.3 自加和自减运算符 055

4.3 位移运算符和表达式 057

4.3.1 位移运算符 057

4.3.2 位移表达式 057

4.4 关系运算符和表达式 058

4.4.1 关系运算符 058

4.4.2 关系表达式 058

4.5 位运算符和表达式 059

4.5.1 位运算符 059

4.5.2 位表达式 059

4.6 逻辑运算符和表达式 060

4.6.1 逻辑运算符 060

4.6.2 逻辑表达式 060

4.7 条件运算符和表达式 061

4.8 赋值运算符和表达式 062

4.8.1 赋值运算符 062

4.8.2 赋值表达式 062

4.9 逗号运算符和表达式 063

4.10 运算符的优先级 064

4.11 综合案例 066

4.12 疑难解答 067

第 5 章 程序控制结构和语句

5.1 程序流程概述 070

5.2 顺序结构 070

5.3 选择结构与语句 071

5.3.1 选择结构 071

5.3.2 单分支选择结构——if语句 071

5.3.3 双分支选择结构——if...else语句 073

5.3.4 多分支选择结构——switch语句 074

5.4 循环结构与语句 076

5.4.1 循环结构 076

5.4.2 for语句 077

5.4.3 while语句 080

5.4.4 do...while语句 081

5.5 转向语句 082

5.5.1 break语句 083

5.5.2 continue语句 084

5.5.3 goto语句 085

5.6 简单文件输入输出 086

5.6.1 文本文件 087

5.6.2 文件读取 087

5.6.3 文件写入 087

5.7 常见错误 089

5.7.1 语法错误 089

5.7.2 逻辑错误 089

5.7.3 运行错误 090

5.8 程序调试 090

5.9 综合案例 093

5.10 疑难解答 095

第 6 章 程序设计的灵魂——算法与流程图

6.1 算法基础 098

6.1.1 算法的概念 098

6.1.2 算法的特性 098

6.1.3 算法举例1—排序 099

6.1.4 算法举例2—求和 100

6.2 流程图基础 101

6.2.1 流程图中的元素及含义 102

6.2.2 流程图的绘制 102

6.3 如何表示一个算法 103

6.3.1 用自然语言表示算法 103

6.3.2 用流程图表示算法 104

6.3.3 用N-S图表示算法 106

6.3.4 用伪代码表示算法 107

6.3.5 用PAD 图表示算法 108

6.4 结构化算法 109

6.5 综合案例 110

6.6 疑难解答 114

第 7 章 相同类型的数值表达——数组

7.1 数组是什么 116

7.1.1 一维数组 116

7.1.2 一维数组的声明和定义 116

7.1.3 一维数组的初始化 117

7.1.4 一维数组元素的引用 118

7.2 二维数组 119

7.2.1 二维数组的定义 120

7.2.2 二维数组的初始化 120

7.2.3 存取二维数组元素 122

7.2.4 二维数组元素的引用 123

7.3 多维数组 124

7.4 综合案例 124

7.5 疑难解答 126

第 8 章 函数

8.1 函数的作用与分类 128

8.1.1 函数的作用 128

8.1.2 函数的分类 129

8.2 函数的定义与声明 130

8.2.1 函数的定义 130

8.2.2 函数的声明 131

8.3 函数的参数和返回值 131

8.3.1 函数的参数 131

8.3.2 函数的返回值 132

8.4 函数的调用 133

8.4.1 函数调用的方式 133

8.4.2 参数传递方式 134

8.4.3 函数的嵌套调用 137

8.4.4 递归调用 138

8.4.5 函数的重载 140

8.4.6 带默认值的函数 141

8.5 局部变量和全局变量 142

8.5.1 局部变量 143

8.5.2 全局变量 143

8.6 变量的存储类别 144

8.7 内部函数和外部函数 145

8.8 内联函数 147

8.9 编译预处理 149

8.10 综合案例 153

8.11 疑难解答 156

第 9 章 内存的快捷方式——指针

9.1 指针概述 158

9.1.1 计算机内存地址 158

9.1.2 定义指针和取出指针指向地址中的数据 158

9.1.3 初始化指针和指针赋值 159

9.1.4 指针的运算 161

9.2 指针和数组 162

9.2.1 指针和一维数组 162

9.2.2 指针和二维数组 164

9.2.3 指针和字符数组 166

9.2.4 字符指针和字符数组对比 168

9.2.5 指向指针的指针 168

9.2.6 指针数组和数组指针 169

9.3 指针和函数 170

9.3.1 函数指针 170

9.3.2 返回指针的函数 171

9.3.3 指针与传递数组的函数 173

9.4 const 指针 174

9.5 特殊的指针 176

9.5.1 void指针类型 176

9.5.2 空指针 177

9.6 综合案例 178

9.7 疑难解答 180

第 10章 输入和输出

10.1 标准输入输出 182

10.1.1 输入操作符>> 182

10.1.2 输出操作符<< 183

10.2 标准格式输出流 185

10.2.1 常用的格式流 185

10.2.2 有参数的常用流 187

10.3 其他输入输出使用的函数 187

10.4 随机数发生器函数 188

10.5 字符串操作 189

10.6 综合案例 191

10.7 疑难解答 193

第 Ⅱ 篇核心技术

第 11章 面向对象编程基础——类和对象

11.1 类与对象概述 197

11.1.1 类的声明与定义 197

11.1.2 对象的定义和使用 200

11.2 构造函数 201

11.3 析构函数  204

11.4 静态成员 207

11.5 友元 208

11.5.1 友元成员 208

11.5.2 友元函数 210

11.5.3 友元类 212

11.6 this指针 214

11.7 综合案例 215

11.8 疑难解答 217

第 12章 C++中的空间应用——命名空间

12.1 命名空间的定义 220

12.1.1 命名空间的概念 220

12.1.2 命名空间的定义 220

12.2 命名空间成员的使用 222

12.2.1 using声明 222

12.2.2 using指令 222

12.3 类和命名空间的关系 224

12.4 自定义命名空间 225

12.5 作用域 227

12.6 综合案例 230

12.7 疑难解答 232

第 13章 继承与派生

13.1 继承概述 234

13.1.1 什么是继承 234

13.1.2 基类与派生类 234

13.2 单继承 235

13.3 多继承与多重继承 238

13.3.1 多继承的引用 239

13.3.2 二义性 239

13.4 虚继承和虚基类 241

13.4.1 虚继承的概念 241

13.4.2 虚继承的语法 241

13.5 派生 243

13.5.1 派生类的生成过程 243

13.5.2 基类的使用 244

13.5.3 派生类的使用 244

13.6 综合案例 245

13.7 疑难解答 246

第 14章 多态与重载

14.1 多态概述 248

14.2 虚函数 250

14.3 构造函数多态 252

14.4 抽象类 257

14.5 重载概述 259

14.5.1 运算符重载 259

14.5.2 函数重载 262

14.6 综合案例 267

14.7 疑难解答 269

第 15章 文件操作

15.1 什么是文件 272

15.1.1 文件的分类 272

15.1.2 C++如何使用文件 272

15.2 文件的打开和关闭 273

15.2.1 打开文件 273

15.2.2 关闭文件 274

15.3 文件的读写 275

15.3.1 文本文件的读写 275

15.3.2 二进制文件的读写 276

15.4 文件中实现定位到每个数据 277

15.5 文件中的数据随机访问 278

15.6 综合案例 279

15.7 疑难解答 286

第 16章 容器

16.1 容器的概念 288

16.2 迭代器 288

16.3 顺序容器 289

16.4 向量的使用 289

16.5 列表 294

16.6 关联容器 296

16.7 映射 296

16.8 适配器 299

16.8.1 容器适配器 299

16.8.2 stack容器 299

16.9 综合案例 301

16.10 疑难解答 302

第 17章 模板

17.1 模板的概念 304

17.1.1 模板的定义 304

17.1.2 模板的作用 304

17.1.3 模板的语法 304

17.2 模板的编译模型 308

17.2.1 包含编译模型 308

17.2.2 分离编译模型 310

17.3 模板的特化 310

17.3.1 函数模板的特化 311

17.3.2 类模板的特化 311

17.3.3 类模板的偏特化 312

17.4 综合案例 314

17.5 疑难解答 316

第 18章 预处理

18.1 预处理概述 318

18.2 函数对象 318

18.2.1 函数对象的应用 318

18.2.2 自定义函数对象 318

18.3 常见的预处理 319

18.3.1 文件包含 319

18.3.2 条件编译 320

18.3.3 布局控制 321

18.3.4 宏替代 322

18.3.5 其他预编译命令 324

18.4 综合案例 324

18.5 疑难解答 326

第 19章 异常处理

19.1 异常的类型 328

19.1.1 常见异常 328

19.1.2 异常的分类 328

19.2 异常处理的基本思想 329

19.3 异常处理语句 329

19.3.1 异常处理语句块 329

19.3.2 使用 try…catch 处理异常 330

19.4 多种异常的捕获 333

19.5 异常的重新抛出 335

19.6 构造函数异常的处理 337

19.7 综合案例 339

19.7.1 强制类型转换异常处理 339

19.7.2 读写文件异常处理 341

19.8 疑难解答 342

第 20章 网络编程技术

20.1 网络编程基础 344

20.1.1 TCP/IP 协议 344

20.1.2 WinSock 套接字 345

20.2 TCP 可靠连接 349

20.2.1 服务器端 349

20.2.2 客户端 350

20.3 UDP 消息传输 352

20.3.1 服务器端 352

20.3.2 客户端 353

20.4 综合案例 354

20.5 疑难解答 358

第 21章 数据库编程技术

21.1 数据库基础知识 360

21.1.1 数据库系统概述 360

21.1.2 数据库管理系统 360

21.1.3 数据库安装及使用 361

21.2 SQL 366

21.2.1 SQL 的特点 366

21.2.2 SQL 语句 367

21.2.3 SQL 中的常用函数 369

21.3 C++ 与数据库交互 371

21.3.1 IDE 配置 371

21.3.2 数据库连接 372

21.3.3 基本操作 374

21.4 数据库访问接口 376

21.4.1 ADO 访问技术 377

21.4.2 ODBC 访问技术 378

21.5 综合案例 379

21.6 疑难解答 385

第 22章 用户界面编程及游戏编程

22.1 Windows 编程基础 388

22.1.1 API 与SDK 388

22.1.2 窗体与句柄 388

22.1.3 Windows 应用程序组成 388

22.2 GDI 基础 390

22.2.1 GDI 概述 390

22.2.2 设备描述表 391

22.2.3 绘图对象 391

22.2.4 GDI 绘图 391

22.3 位图 395

22.4 图标与菜单 397

22.5 控件的使用 400

22.5.1 控件的创建与响应 400

22.5.2 对话框的使用 402

22.6 常用的游戏算法 404

22.6.1 递归算法 404

22.6.2 枚举算法 406

22.6.3 动态规划 406

22.6.4 贪心算法 409

22.6.5 回溯算法 411

22.7 综合案例 413

22.8 疑难解答 426

第 Ⅲ 篇提高篇

第 23章 网络应用项目

23.1 项目需求分析 429

23.1.1 C/S模式 429

23.1.2 C/S模式的运作流程 429

23.2 实现原理 430

23.3 具体实现 430

23.3.1 服务器端 430

23.3.2 客户端 435

23.4 疑难解答 440

第 24章 DirectX基础与应用

24.1 DirectX基础 442

24.2 概述 442

24.3 基本结构与组成 442

24.3.1 基于COM的DirectX  442

24.3.2 DirectX的组成 443

24.4 Direct3D应用 443

24.4.1 框架 443

24.4.2 顶点及索引缓存 445

24.5 表面与位图 450

24.6 DirectShow与DirectSound 460

24.7 综合案例 461

24.8 疑难解答 465

第 25章 专业理财系统

25.1 开发背景 468

25.2 需求及功能分析 468

25.2.1 需求分析 468

25.2.2 总体功能分析 469

25.2.3 各功能模块设计 470

25.3 系统功能的实现 473

25.3.1 系统整体功能的实现 473

25.3.2 系统界面功能的实现 474

25.3.3 登录功能的实现 474

25.3.4 创建表格模块的实现 475

25.3.5 增添信息模块的实现 476

25.3.6 删除信息模块的实现 477

25.3.7 查询信息模块的实现 477

25.3.8 修改信息模块的实现 478

25.3.9 统计信息模块的实现 480

25.3.10  数据管理模块的实现 481

25.4 系统运行 481

25.5 疑难解答 486

详情

本书第1篇“基础知识”主要讲解C++程序的基本组成、标识符、运算符、表达式、程序控制结构和语句、算法与流程图、函数等内容;第2篇“核心技术”主要讲解类和对象、命名空间、继承与派生、多态与重载、文件操作、容器、模板、预处理、异常处理、网络编程技术、数据库编程技术以及用户界面编程及游戏编程等内容;第3篇“提高篇”主要介绍网络应用项目、图书管理系统、Directx基础与应用以及专业理财系统等内容。

图书摘要

相关图书

代码审计——C/C++实践
代码审计——C/C++实践
CMake构建实战:项目开发卷
CMake构建实战:项目开发卷
C++ Templates(第2版)中文版
C++ Templates(第2版)中文版
C/C++代码调试的艺术(第2版)
C/C++代码调试的艺术(第2版)
计算机图形学编程(使用OpenGL和C++)(第2版)
计算机图形学编程(使用OpenGL和C++)(第2版)
Qt 6 C++开发指南
Qt 6 C++开发指南

相关文章

相关课程