'+ ='的含义

Ama*_*mal 4 .net c# syntax operators

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

SLa*_*aks 30

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

SomeEvent += EventHandler;
Run Code Online (Sandbox Code Playgroud)

向事件添加处理程序.


SomeVariable += 3;
Run Code Online (Sandbox Code Playgroud)

相当于

SomeVariable = SomeVariable + 3;
Run Code Online (Sandbox Code Playgroud)

  • @Technophile:错了.当在类之外(或总是在C#4.0中)时,`instance.Event + = handler`编译为`instance.add_Event(handler);` (4认同)

Gly*_*ine 6

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

就像每个人都说的那样,是缩短版的value = value + 3.

使用它有多种原因.最明显的是,它更快速地编写,更易于阅读并且更快地发现错误.

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

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


你也有相应的:

+=:另外

-=:减法

/=:乘法

*=:乘法

%=:模数

而不太明显的:

++: 加一

--:减一