fix: refine title number

This commit is contained in:
Changkun Ou
2018-05-06 16:03:13 +02:00
parent 9e18543f65
commit 832c6220c5
7 changed files with 29 additions and 112 deletions

View File

@@ -8,28 +8,9 @@ order: 3
> 内容修订中
## 一、本节内容
[TOC]
本节内容包括:
* 语言运行期的强化
* lambda 表达式
* lambda 表达式基础
* 值捕获
* 引用捕获
* 隐式捕获
* 表达式捕获
* 泛型 lambda
* 函数对象包装器
* std::function
* std::bind/std::placeholder
* 右值引用
* 左值、右值的纯右值、将亡值、右值
* 右值引用和左值引用
* 移动语义
* 完美转发
## 二、Lambda 表达式
## 3.1 Lambda 表达式
Lambda 表达式是 C++11 中最重要的新特性之一,而 Lambda 表达式,实际上就是提供了一个类似匿名函数的特性,而匿名函数则是在需要一个函数,但是又不想费力去命名一个函数的情况下去使用的。这样的场景其实有很多很多,所以匿名函数几乎是现代编程语言的标配。
@@ -131,7 +112,7 @@ add(1, 2);
add(1.1, 2.2);
```
## 二、函数对象包装器
## 3.2 函数对象包装器
这部分内容虽然属于标准库的一部分,但是从本质上来看,它却增强了 C++ 语言运行时的能力,这部分内容也相当重要,所以放到这里来进行介绍。
@@ -200,7 +181,7 @@ int main() {
> **提示:**注意 `auto` 关键字的妙用。有时候我们可能不太熟悉一个函数的返回值类型,但是我们却可以通过 `auto` 的使用来规避这一问题的出现。
## 三、右值引用
## 3.3 右值引用
右值引用是 C++11 引入的与 Lambda 表达式齐名的重要特性之一。它的引入解决了 C++ 中大量的历史遗留问题,消除了诸如 `std::vector``std::string` 之类的额外开销,也才使得函数对象容器 `std::function` 成为了可能。