Tho*_*rge 11
它们不包含在 Rust 中,因为它们可能会导致微妙的错误,因为它们需要有关计算顺序的复杂知识,特别是当组合成更大的表达式时,如下所示。你能猜出这两个 C++ 程序打印什么吗?我猜错了。
#include <cstdio>
int main()
{
int a = 4;
int b = 4;
int c = a++ + b++;
printf ("%i %i %i", a, b, c);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
#include <cstdio>
int main()
{
int x = 10;
int z = ++x + x++;
printf ("%i %i", x, z);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
来自常见问题解答:
为什么 Rust 没有自增和自减运算符?
预增量和后增量(以及相应的减量)虽然方便,但也相当复杂。它们需要了解计算顺序,并且通常会导致 C 和 C++ 中的微妙错误和未定义的行为。x = x + 1 或 x += 1 只是稍微长一点,但很明确。
| 归档时间: |
|
| 查看次数: |
1776 次 |
| 最近记录: |