C++之旅(第3版 英文版)

C++之旅(第3版 英文版)
作 者: 本贾尼 斯特劳斯特鲁普
出版社: 电子工业出版社
丛编项:
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  本贾尼?斯特劳斯特鲁普是 C++ 的设计者和原始实现者,也是本书及《C++程序设计原理与实践》(第2版)和《C++程序设计语言》(第4版)等领域名著的作者。他目前是哥伦比亚大学教授,之前曾在 AT&T 贝尔实验室、得克萨斯 A&M 大学和摩根士丹利工作。他曾获得无数荣誉,包括因开发和改进 C++ 编程语言所获的美国国家工程院查尔斯·斯塔克·德雷珀奖。本贾尼?斯特劳斯特鲁普是 C++ 的设计者和原始实现者,也是本书及《C++程序设计原理与实践》(第2版)和《C++程序设计语言》(第4版)等领域名著的作者。他目前是哥伦比亚大学教授,之前曾在 AT&T 贝尔实验室、得克萨斯 A&M 大学和摩根士丹利工作。他曾获得无数荣誉,包括因开发和改进 C++ 编程语言所获的美国国家工程院查尔斯·斯塔克·德雷珀奖。

内容简介

本书一共 19 章,以 C++20 为标准,讲述了最新的现代 C++所能提供的编程特性,有其他语言编程经验的读者可以快速了解 C++所具备的功能,从而获得对现代 C++的更全面认知,以便更好地了解现代 C++语言已经发展到的程度。资深程序员可以从他的整体行文风格中,感受到他在设计 C++特性时的一些思考考量以及侧重点,了解C++这门语言在历史上曾经经历了一些什么变迁,以及一部分特性为什么会是今天这个样子。

图书目录

1 基础 ................................................................................................... 17

1.1 引言 .................................................................................................................................. 17

1.2 程序 .................................................................................................................................. 18

1.2.1 Hello, World! ....................................................................................................... 18

1.3 函数 .................................................................................................................................. 20

1.4 类型、变量与运算 .......................................................................................................... 21

1.4.1 算术运算 ............................................................................................................. 23

1.4.2 初始化 ................................................................................................................. 24

1.5 作用域和生命周期 .......................................................................................................... 25

1.6 常量 .................................................................................................................................. 26

1.7 指针、数组和引用 .......................................................................................................... 27

1.7.1 空指针 ................................................................................................................. 29

1.8 检验 .................................................................................................................................. 30

1.9 映射到硬件 ...................................................................................................................... 32

1.9.1 赋值 ..................................................................................................................... 33

1.9.2 初始化 ................................................................................................................. 34

1.10 建议 ................................................................................................................................ 35

2 用户自定义类型 ..................................................................................... 37

2.1 引言 .................................................................................................................................. 37

2.2 结构 .................................................................................................................................. 38

2.3 类 ...................................................................................................................................... 39

2.4 枚举 .................................................................................................................................. 41

2.5 联合 .................................................................................................................................. 43

2.6 建议 .................................................................................................................................. 44

3 模块化 ............................................................................................... 45

3.1 引言 .................................................................................................................................. 45

3.2 分离编译 .......................................................................................................................... 46

3.2.1 头文件 ................................................................................................................. 47

3.2.2 模块 ..................................................................................................................... 49

3.3 命名空间 .......................................................................................................................... 51

3.4 函数参数与返回值 .......................................................................................................... 53

3.4.1 参数传递 ............................................................................................................. 54

3.4.2 返回值 ................................................................................................................. 55

3.4.3 返回类型推导 ..................................................................................................... 56

3.4.4 返回类型后置 ..................................................................................................... 56

3.4.5 结构化绑定 ......................................................................................................... 57

3.5 建议 .................................................................................................................................. 58

4 错误处理 ............................................................................................ 59

4.1 引言 .................................................................................................................................. 59

4.2 异常 .................................................................................................................................. 60

4.3 约束条件 .......................................................................................................................... 61

4.4 错误处理的其他替代方式 .............................................................................................. 63

4.5 断言 .................................................................................................................................. 64

4.5.1 assert() ................................................................................................................. 65

4.5.2 static_assert .......................................................................................................... 66

4.5.3 noexcept ............................................................................................................... 66

4.6 建议 .................................................................................................................................. 67

5 类 ..................................................................................................... 69

5.1 引言 .................................................................................................................................. 69

5.1.1 类的概述 ............................................................................................................. 70

5.2 具体类型 .......................................................................................................................... 70

5.2.1 一种算术类型 ..................................................................................................... 71

5.2.2 容器 ..................................................................................................................... 73

5.2.3 容器的初始化 ..................................................................................................... 74

5.3 抽象类型 .......................................................................................................................... 76

5.4 虚函数 .............................................................................................................................. 78

5.5 类层次结构 ...................................................................................................................... 79

5.5.1 类层次结构的益处 ............................................................................................. 81

5.5.