diff --git a/book/zh-cn/03-runtime.md b/book/zh-cn/03-runtime.md index 3738bc1a..e2855df9 100644 --- a/book/zh-cn/03-runtime.md +++ b/book/zh-cn/03-runtime.md @@ -333,7 +333,7 @@ void foo() { ``` 由于 `int&` 不能引用 `double` 类型的参数,因此必须产生一个临时值来保存 `s` 的值, -从而当 `increase()` 修改这个临时值时,从而调用完成后 `s` 本身并没有被修改。 +从而当 `increase()` 修改这个临时值时,调用完成后 `s` 本身并没有被修改。 第二个问题,为什么常量引用允许绑定到非左值?原因很简单,因为 Fortran 需要。 diff --git a/code/3/3.3.rvalue.cpp b/code/3/3.3.rvalue.cpp index 2406ea83..20b30ca8 100644 --- a/code/3/3.3.rvalue.cpp +++ b/code/3/3.3.rvalue.cpp @@ -20,7 +20,7 @@ void reference(std::string&& str) { int main() { std::string lv1 = "string,"; // lv1 is a lvalue - // std::string&& r1 = s1; // illegal, rvalue can't ref to lvalue + // std::string&& r1 = lv1; // illegal, rvalue can't ref to lvalue std::string&& rv1 = std::move(lv1); // legal, std::move can convert lvalue to rvalue std::cout << rv1 << std::endl; // string,