书籍详情

C++语言导学(原书第2版)

C++语言导学(原书第2版)

作者:[美] 本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup) 著,王刚 译

出版社:机械工业出版社

出版时间:2019-09-01

ISBN:9787111633280

定价:¥79.00

购买这本书可以去
内容简介
  《C++语言导学(原书第2版)》简洁、自成体系,包含C++语言大多数主要特性和标准库组件。当然,这些并未深入介绍,而是给予程序员一个有意义的语言概述、一些关键的例子以及起步阶段的实用帮助。该书的目标不是教你如何编程,它也不可能是你精通C++的资源。但是,如果你是一名C或C++程序员,希望更加熟悉现在的C++语言,或者你是一名精通其他语言的程序员,希望获得有关现代C++语言本质和优点的精确描述,该书是选择。
作者简介
  本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup),是C++的设计者和最初的实现者,他也是《C++程序设计原理与实践》和《C++程序设计语言》等书的作者。他曾在贝尔实验室、AT&T实验室和德州农工大学工作,现在担任纽约市摩根斯坦利技术部门总经理和哥伦比亚大学客座教授。他获得过多项荣誉,包括因构思并开发了C++程序设计语言获得美国国家工程院2018年查尔斯·斯塔克·德雷珀奖。斯特劳斯特鲁普博士是美国国家工程院会员、IEEE会士和ACM会士。
目录
出版者的话
译者序
前言
第1章 基础知识
1.1 引言
1.2 程序
1.3 函数
1.4 类型、变量和算术运算
1.4.1 算术运算
1.4.2 初始化
1.5 作用域和生命周期
1.6 常量
1.7 指针、数组和引用
1.8 检验
1.9 映射到硬件
1.9.1 赋值
1.9.2 初始化
1.10 建议
第2章 用户自定义类型
2.1 引言
2.2 结构
2.3 类
2.4 联合
2.5 枚举
2.6 建议
第3章 模块化
3.1 引言
3.2 分别编译
3.3 模块(C++20)
3.4 名字空间
3.5 错误处理
3.5.1 异常
3.5.2 不变式
3.5.3 错误处理替代
3.5.4 合约
3.5.5 静态断言
3.6 函数参数和返回值
3.6.1 参数传递
3.6.2 返回值
3.6.3 结构化绑定
3.7 建议
第4章 类
4.1 引言
4.2 具体类型
4.2.1 一种算术类型
4.2.2 容器
4.2.3 初始化容器
4.3 抽象类型
4.4 虚函数
4.5 类层次
4.5.1 层次结构的益处
4.5.2 层次漫游
4.5.3 避免资源泄漏
4.6 建议
第5章 基本操作
5.1 引言
5.1.1 基本操作
5.1.2 类型转换
5.1.3 成员初始值
5.2 拷贝和移动
5.2.1 拷贝容器
5.2.2 移动容器
5.3 资源管理
5.4 常规操作
5.4.1 比较
5.4.2 容器操作
5.4.3 输入输出操作
5.4.4 用户自定义字面值
5.4.5 swap()
5.4.6 hash<>
5.5 建议
第6章 模板
6.1 引言
6.2 参数化类型
6.2.1 约束模板参数(C++20)
6.2.2 值模板参数
6.2.3 模板参数推断
6.3 参数化操作
6.3.1 函数模板
6.3.2 函数对象
6.3.3 lambda表达式
6.4 模板机制
6.4.1 可变参数模板
6.4.2 别名
6.4.3 编译时if
6.5 建议
第7章 概念和泛型编程
7.1 引言
7.2 概念(C++20)
7.2.1 概念的使用
7.2.2 基于概念的重载
7.2.3 合法代码
7.2.4 概念的定义
7.3 泛型编程
7.3.1 概念的使用
7.3.2 使用模板抽象
7.4 可变参数模板
7.4.1 表达式折叠
7.4.2 参数转发
7.5 模板编译模型
7.6 建议
第8章 标准库概览
8.1 引言
8.2 标准库组件
8.3 标准库头文件和名字空间
8.4 建议
第9章 字符串和正则表达式
9.1 引言
9.2 字符串
9.3 字符串视图
9.4 正则表达式
9.4.1 搜索
9.4.2 正则表达式符号表示
9.4.3 迭代器
9.5 建议
第10章 输入输出
10.1 引言
10.2 输出
10.3 输入
10.4 I/O状态
10.5 用户自定义类型的I/O
10.6 格式化
10.7 文件流
10.8 字符串流
10.9 C风格I/O
10.10 文件系统
10.11 建议
第11章 容器
11.1 引言
11.2 vector
11.2.1 元素
11.2.2 范围检查
11.3 list
11.4 map
11.5 unordered_map
11.6 容器概述
11.7 建议
第12章 算法
12.1 引言
12.2 使用迭代器
12.3 迭代器类型
12.4 流迭代器
12.5 谓词
12.6 算法概述
12.7 概念(C++20)
12.8 容器算法
12.9 并行算法
12.10 建议
第13章 实用功能
13.1 引言
13.2 资源管理
13.2.1 unique_ptr和shared_ptr
13.2.2 move()和forward()
13.3 范围检查:span
13.4 特殊容器
13.4.1 array
13.4.2 bitset
13.4.3 pair和tuple
13.5 选择
13.5.1 variant
13.5.2 optional
13.5.3 any
13.6 分配器
13.7 时间
13.8 函数适配器
13.8.1 lambda作为适配器
13.8.2 mem_fn()
13.8.3 function
13.9 类型函数
13.9.1 iterator_traits
13.9.2 类型谓词
13.9.3 enable_if
13.10 建议
第14章 数值
14.1 引言
14.2 数学函数
14.3 数值算法
14.4 复数
14.5 随机数
14.6 向量算术
14.7 数值限制
14.8 建议
第15章 并发
15.1 引言
15.2 任务和thread
15.3 传递参数
15.4 返回结果
15.5 共享数据
15.6 等待事件
15.7 任务通信
15.7.1 future和promise
15.7.2 packaged_task
15.7.3 async()
15.8 建议
第16章 历史和兼容性
16.1 历史
16.1.1 大事年表
16.1.2 早期的C++
16.1.3 ISO C++标准
16.1.4 标准和编程风格
16.1.5 C++的应用
16.2 C++特性演化
16.2.1 C++11语言特性
16.2.2 C++14语言特性
16.2.3 C++17语言特性
16.2.4 C++11标准库组件
16.2.5 C++14标准库组件
16.2.6 C++17标准库组件
16.2.7 已弃用特性
16.3 C/C++兼容性
16.3.1 C和C++是兄弟
16.3.2 兼容性问题
16.4 参考文献
16.5 建议
索引
猜您喜欢

读书导航