Skip to content

Commit 4bcb210

Browse files
0x11901changkun
authored andcommitted
fix: typo in 03-runtime.md. (changkun#25)
1 parent 2e63a68 commit 4bcb210

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

book/zh-cn/03-runtime.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ Lambda 表达式的基本语法如下:
4343

4444
**1. 值捕获**
4545

46-
与参数传值类似,值捕获的前期是变量可以拷贝,不同之处则在于,被捕获的变量在 lambda 表达式被创建时拷贝,而非调用时才拷贝:
46+
与参数传值类似,值捕获的前提是变量可以拷贝,不同之处则在于,被捕获的变量在 lambda 表达式被创建时拷贝,而非调用时才拷贝:
4747

4848
```cpp
4949
void learn_lambda_func_1() {
@@ -253,13 +253,13 @@ int main()
253253
std::string&& rv1 = std::move(lv1); // 合法, std::move可以将左值转移为右值
254254
std::cout << rv1 << std::endl; // string,
255255

256-
const std::string& lv2 = lv1 + lv1; // 合法, 常量左值引用能够延长临时变量的申明周期
256+
const std::string& lv2 = lv1 + lv1; // 合法, 常量左值引用能够延长临时变量的生命周期
257257
// lv2 += "Test"; // 非法, 引用的右值无法被修改
258258
std::cout << lv2 << std::endl; // string,string
259259

260-
std::string&& rv2 = lv1 + lv2; // 合法, 右值引用延长临时对象声明周期
260+
std::string&& rv2 = lv1 + lv2; // 合法, 右值引用延长临时对象生命周期
261261
rv2 += "Test"; // 合法, 非常量引用能够修改临时变量
262-
std::cout << rv2 << std::endl; // string,string,string,
262+
std::cout << rv2 << std::endl; // string,string,string,Test
263263

264264
reference(rv2); // 输出左值
265265

@@ -425,7 +425,7 @@ std::forward 传参:左值引用
425425

426426
唯独 `std::forward` 即没有造成任何多余的拷贝,同时**完美转发**\(传递\)了函数的实参给了内部调用的其他函数。
427427

428-
> `std::forward``std::move` 一样,没有做任何事情,`std::move` 单纯的将左值转化为右值,`std::forward` 也只是单纯的将参数做了一个类型的转换,从是线上来看`std::forward<T>(v)``static_cast<T&&>(v)` 是完全一样的。
428+
> `std::forward``std::move` 一样,没有做任何事情,`std::move` 单纯的将左值转化为右值,`std::forward` 也只是单纯的将参数做了一个类型的转换,从现象上来看`std::forward<T>(v)``static_cast<T&&>(v)` 是完全一样的。
429429
430430
## 总结
431431

0 commit comments

Comments
 (0)