'+ ='的含义

时间:2010-03-22 14:52:18

标签: c# .net syntax operators

我对C#的语法感到困惑:“+ =”的用法是什么?

4 个答案:

答案 0 :(得分:30)

+=语法可以以不同的方式使用:

SomeEvent += EventHandler;

为事件添加处理程序。


SomeVariable += 3;

相当于

SomeVariable = SomeVariable + 3;

答案 1 :(得分:6)

这称为复合运算符。它们是我所能使用的所有语言的共同点:Javascript,C,Java,PHP,.net,GL。

就像所有人都说的那样,是value = value + 3的缩短版本。

使用它的原因有很多。最明显的是,它更快速地编写,更容易阅读,更快地发现错误。

最重要的是,复合运算符的具体设计不需要与等效value = value + 3一样多的计算。我不完全确定为什么,但证据是最重要的。

只需创建一个循环,循环为5,000,000,在继续时添加一个值。在两个测试案例中,我个人从Actionscript中了解到,复合运营商的速度提升了大约60%。


您还有等效的内容:

+=:添加

-=:减法

/=:乘法

*=:multplication

%=:模数

并且不太明显:

++:加一个

--:减一个

答案 2 :(得分:5)

a += 3

相同
a = a + 3

答案 3 :(得分:0)

注意,它不一定总是等价的。

对于普通变量,a+=a确实相当于a=a+a,而且更短!对于改变其状态的奇数变量,不是那么多。