mirror of
https://github.com/changkun/modern-cpp-tutorial.git
synced 2025-12-17 12:44:40 +03:00
revision #2: 更换文件名缩写
This commit is contained in:
@@ -30,7 +30,7 @@ C++17 则是近三年依赖 C++ 社区一致推进的方向,也指出了**现
|
||||
|
||||
本书每章中都出现了大量的代码,如果你在跟随本书介绍特性的思路编写自己的代码遇到问题时,不妨读一读随书附上的源码,你可以在[这里](../code)中找到书中介绍过的全部的源码,所有代码按章节组织,文件夹名称为章节序号。
|
||||
|
||||
[返回目录](./toc.md) | 上一章 | [下一章:迈向 C++11/14/17](./1-intro.md)
|
||||
[返回目录](./toc.md) | 上一章 | [下一章:迈向 C++11/14/17](./01-intro.md)
|
||||
|
||||
## 许可
|
||||
|
||||
|
||||
@@ -118,7 +118,7 @@ clean:
|
||||
|
||||
不必担心,本书的后续章节将为你介绍这一切。
|
||||
|
||||
[返回目录](./toc.md) | [上一章](./0-preface.md) | [下一章:语言可用性强化](./2-usability.md)
|
||||
[返回目录](./toc.md) | [上一章](./0-preface.md) | [下一章:语言可用性强化](./02-usability.md)
|
||||
|
||||
## 进一步阅读的参考文献
|
||||
|
||||
@@ -444,7 +444,7 @@ std::cout << "q: " << q << std::endl;
|
||||
|
||||
`decltype(auto)` 是 C++14 开始提供的一个略微复杂的用法。
|
||||
|
||||
> 要理解它你需要知道 C++ 中参数转发的概念,我们会在[语言运行时强化](./3-runtime)一章中详细介绍,你可以到时再回来看这一小节的内容。
|
||||
> 要理解它你需要知道 C++ 中参数转发的概念,我们会在[语言运行时强化](./03-runtime.md)一章中详细介绍,你可以到时再回来看这一小节的内容。
|
||||
|
||||
|
||||
简单来说,`decltype(auto)` 主要用于对转发函数或封装的返回类型进行推导,它使我们无需显式的指定 `decltype` 的参数表达式。考虑看下面的例子,当我们需要对下面两个函数进行封装时:
|
||||
@@ -947,7 +947,7 @@ std::cout << new_enum::value3 << std::endl
|
||||
|
||||
> 参考答案[见此](../exercises/2)。
|
||||
|
||||
[返回目录](./toc.md) | [上一章](./1-intro.md) | [下一章:运行时强化](./3-runtime.md)
|
||||
[返回目录](./toc.md) | [上一章](./01-intro.md) | [下一章:运行时强化](./03-runtime.md)
|
||||
|
||||
## 进一步阅读的参考文献
|
||||
|
||||
18
book/toc.md
18
book/toc.md
@@ -5,11 +5,11 @@
|
||||
## 目录
|
||||
|
||||
- [**序言**](./0-preface.md)
|
||||
- [**第 1 章 迈向 C++11/14/17**](./1-intro.md)
|
||||
- [**第 1 章 迈向 C++11/14/17**](./01-intro.md)
|
||||
+ 1.1 被弃用的特性
|
||||
+ 1.2 与 C 的兼容性
|
||||
+ 进一步阅读的参考文献
|
||||
- [**第二章 语言可用性的强化**](./2-usability.md)
|
||||
- [**第二章 语言可用性的强化**](./02-usability.md)
|
||||
+ 2.1 常量
|
||||
- nullptr
|
||||
- constexpr
|
||||
@@ -40,7 +40,7 @@
|
||||
- final
|
||||
- 显式禁用默认函数
|
||||
- 强类型枚举
|
||||
- [**第三章 语言运行期的强化**](./3-runtime.md)
|
||||
- [**第三章 语言运行期的强化**](./03-runtime.md)
|
||||
+ lambda 表达式
|
||||
+ lambda 表达式基础
|
||||
+ 值捕获
|
||||
@@ -56,7 +56,7 @@
|
||||
+ 右值引用和左值引用
|
||||
+ 移动语义
|
||||
+ 完美转发
|
||||
- [**第四章 标准库: 容器**](./4-containers.md)
|
||||
- [**第四章 标准库: 容器**](./04-containers.md)
|
||||
+ `std::array`
|
||||
+ `std::forward_list`
|
||||
+ `std::unordered_set`
|
||||
@@ -65,12 +65,12 @@
|
||||
+ 基本操作
|
||||
+ 运行期索引
|
||||
+ 合并与迭代
|
||||
- [**第五章 标准库: 指针**](./5-pointers.md)
|
||||
- [**第五章 标准库: 指针**](./05-pointers.md)
|
||||
+ RAII 与引用计数
|
||||
+ `std::shared_ptr`
|
||||
+ `std::unique_ptr`
|
||||
+ `std::weak_ptr`
|
||||
- [**第六章 标准库: 正则表达式**](./6-regex.md)
|
||||
- [**第六章 标准库: 正则表达式**](./06-regex.md)
|
||||
+ 正则表达式简介
|
||||
+ 普通字符
|
||||
+ 特殊字符
|
||||
@@ -79,15 +79,15 @@
|
||||
+ `std::regex`
|
||||
+ `std::regex_match`
|
||||
+ `std::match_results`
|
||||
- [**第七章 标准库: 线程与并发**](./7-thread.md)
|
||||
- [**第七章 标准库: 线程与并发**](./07-thread.md)
|
||||
+ `std::thread`
|
||||
+ `std::mutex`
|
||||
+ `std::unique_lock`
|
||||
+ `std::future`
|
||||
+ `std::packaged_task`
|
||||
+ `std::condition_variable`
|
||||
- [**第八章 标准库: 文件系统**](./8-filesystem.md)
|
||||
- [**第九章 其他杂项**](./9-others.md)
|
||||
- [**第八章 标准库: 文件系统**](./08-filesystem.md)
|
||||
- [**第九章 其他杂项**](./09-others.md)
|
||||
+ 新类型
|
||||
+ `long long int`
|
||||
+ `noexcept` 的修饰和操作
|
||||
|
||||
Reference in New Issue
Block a user