是否有一个以上的职位增量?

Eth*_*wer 7 c# java math

刚刚有一个有趣的想法。在像 C# 和 Java 这样的语言中,我知道在递增和递减的时候,你可以做一个 post,或者 pre-increment/decrement。像这样:

int a = 5;
Console.WriteLine(a++); // Would print out 5,
                        // And then increment a to 6

Console.WriteLine(++a); // Would then print out 7 because 
                        // it increments a before printing it out
Run Code Online (Sandbox Code Playgroud)

但是,我想知道是否有这样的事情可以做这样的事情:

int a = 5;
Console.WriteLine(a += 5); // Would print out 5,
                           // And then increment a to 10

Console.WriteLine(a =+ 5); // (Or something along those lines)
                           // To print out 15 at this point
Run Code Online (Sandbox Code Playgroud)

只是感兴趣,并不真正知道在哪里或如何寻找答案,所以想知道 SO 上是否有人会对此有更多了解。谢谢!

编辑:从评论中添加了我的问题

a += 5a =+5究竟在哪里定义?我从未见过使用第二个。真的存在吗……?他们编译成同样的东西吗?

O. *_*nes 5

过去,C 语言提供此语法作为从变量中添加或减去值的快捷方式。

 a =+ 5;
 b =- 5;
Run Code Online (Sandbox Code Playgroud)

但在 C 语言诞生的早期,dmr(有福的记忆力)和ken不赞成使用这种语法,转而采用

 a += 5;
 b -= 5;
Run Code Online (Sandbox Code Playgroud)

出于完全相同的目的,因为它太容易编写,b=-5这意味着与b -= 5. 这位“经验丰富”的程序员记得重写了一堆代码以匹配新的语言规范。

因此,在这些结构中从来没有像 ina++或那样的前增量或后增量语义--b