diff --git a/src/safe-guides/coding_practice/expr.md b/src/safe-guides/coding_practice/expr.md index 19c2fa90..40f7c9d3 100644 --- a/src/safe-guides/coding_practice/expr.md +++ b/src/safe-guides/coding_practice/expr.md @@ -154,7 +154,7 @@ impl TagNumber { ``` -## G.EXP.05 使用 `+=`/`-=` 等操作来代替 `++i` / `--i` +## G.EXP.05 自增/自减运算使用 `+=`/`-=` ### 【级别:建议】 @@ -168,20 +168,20 @@ impl TagNumber { ### 【描述】 -`++i` 这种操作编译会失败,但是 `--i` 编译不会出错。有些C/Cpp等其他语言新手容易犯此错误。 +C/Cpp 等编程语言常用的自增自减操作,如 `++i` 、`i++` 、`i--` 等不是合法的 Rust 表达式, `--i` 虽然是合法的 Rust 表达式,但是表达对i取反两次,而不是自减语义。 【正例】 ```rust let mut x = 3; -x -= 1; +x -= 1; // x == 2 ``` 【反例】 ```rust let mut x = 3; ---x; +--x; // x == 3 ``` ## G.EXP.06 表达式操作最好使用括号来表达清楚优先级顺序