‘+ =’的含义
我对C#的语法感到困惑:“+ =”的用法是什么?
+=
语法可以以不同的方式使用:
SomeEvent += EventHandler;
向事件添加处理程序。
SomeVariable += 3;
相当于
SomeVariable = SomeVariable + 3;
这称为复合运算符。 它们是我所能使用的所有语言的共同点:Javascript,C,Java,PHP,.net,GL。
就像每个人都说的那样,是value = value + 3
的缩短版本。
使用它有多种原因。 最明显的是,它更快速地编写,更容易阅读,更快地发现错误。
最重要的是,复合运算符的具体设计不需要与等效value = value + 3
一样多的计算。 我不完全确定为什么,但证据是至关重要的。
只需创建一个循环,循环为5,000,000,然后在继续时添加一个值。 在两个测试案例中,我个人从Actionscript中了解到,复合运营商的速度提升了大约60%。
你也有相应的:
+=
:加法
-=
:减法
/=
:乘法
*=
:乘法
%=
:模数
并且不太明显:
++
:加一个
--
:减1
a += 3
是相同的
a = a + 3
注意,它不一定总是等价的。
对于普通变量, a+=a
确实相当于a=a+a
,并且更短! 对于改变其状态的奇数变量,不是那么多。