From 2b0d22dfe0642fa94b4353d2284eb49f8b8f9fb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8C=AB=E8=80=B3=E5=A0=80=E5=B7=9D=E9=9B=B7=E9=BC=93?= <58223265+neko-horikawaraiko@users.noreply.github.com> Date: Sat, 27 Feb 2021 16:35:23 +0800 Subject: [PATCH] Update item23.md Co-authored-by: Yi Yang --- 5.RRefMovSemPerfForw/item23.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/5.RRefMovSemPerfForw/item23.md b/5.RRefMovSemPerfForw/item23.md index 9143e25..ea864cb 100644 --- a/5.RRefMovSemPerfForw/item23.md +++ b/5.RRefMovSemPerfForw/item23.md @@ -4,7 +4,7 @@ 当你第一次了解到移动语义(*move semantics*)和完美转发(*perfect forwarding*)的时候,它们看起来非常直观: -- **移动语义**使编译器有可能用廉价的移动操作来代替昂贵的复制操作。正如复制构造函数和复制赋值操作符给了你赋值对象的权利一样,移动构造函数和移动赋值操作符也给了控制移动语义的权利。移动语义也允许创建只可移动(*move-only*)的类型,例如`std::unique_ptr`, `std::future` 和 `std::thread`。 +- **移动语义**使编译器有可能用廉价的移动操作来代替昂贵的复制操作。正如复制构造函数和复制赋值操作符给了你控制复制语义的权力,移动构造函数和移动赋值操作符也给了你控制移动语义的权力。移动语义也允许创建只可移动(*move-only*)的类型,例如`std::unique_ptr`, `std::future` 和 `std::thread`。 - **完美转发**使接收任意数量实参的函数模板成为可能,它可以将实参转发到其他的函数,使目标函数接收到的实参与被传递给转发函数的实参保持一致。 @@ -196,4 +196,3 @@ public: 关于move语义的解释 https://stackoverflow.com/questions/36827900/what-makes-moving-objects-faster-than-copying -