Operador Descripcion Abreviacion para:
= Asignacion x = y
+= Adicion x = x + y
-= Sustraccion x = x - y
*= Multiplicacion x = x * y
/= Division x = x / y
它们都在相似的语义下运行。
例子
var x = 10, y = 2;
// Asignación para:
console.log( x += y); // Adición (resultado 12)
console.log( x -= y); // Sustracción (resultado 10)
console.log( x *= y); // Multiplicación (resultado 20)
console.log( x /= y); // División (resultado 10)
与往常一样,该规则有一个例外,那就是 add 的赋值运算符+=,它也用于连接(连接)变量字符串。
例子
var x = "Valor: ", y = 2;
// Asignación para:
console.log( x += y); // cadenas de variables (resultado "Valor: 2")
console.log( x -= y); // cadenas de variables (resultado "NaN")
console.log( x *= y); // cadenas de variables (resultado "NaN")
console.log( x /= y); // cadenas de variables (resultado "NaN")
在您的情况下,您通过运营商
checkedit1.CheckStateChanged
订阅事件CheckValorSi_CheckStateChanged;
+=
请参阅此处的示例:
是相同的
ETC ...
所以
使用+=运算符的表达式,例如
它相当于
除了 x 只被评估一次。+运算符的含义取决于x和y的类型(数字操作数的加法、字符串操作数的连接等)。
+=运算符不能直接重载,即必须先用值初始化。
+=运算符还用于指定响应事件而调用的方法;此类方法称为事件处理程序。在这种情况下使用 += 运算符称为事件订阅。
参考:https ://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/addition-assignment-operator
正如其他同事评论的那样, += 运算符是累积运算符,右侧的内容是累积(或添加,如果是数字数据)到左侧的内容。
在那种特定情况下,正在做的是“积累”一个代表(右边的)到一个事件(左边的)。
您可以将委托“累积/添加”到事件,并且每次事件触发时,将执行“累积/添加”到事件的所有委托。右边的东西是委托,也就是方法。
您还可以将匿名代表“累积/添加”到事件中:
您还可以“删除/减去”事件的委托:
对于避免在某些情况下可能发生的内存泄漏(内存泄漏)非常有用。
当您在表单上放置一个按钮并双击它时,表单设计器会执行您放置的操作,创建一个委托(方法),该委托(方法)通常调用类似“private void button_Click”之类的东西,并将其累积在按钮的 Click 事件中您双击它,只有它生成的代码将 += 放在另一个文件中。
事件不仅在 winforms 中使用,它们是任何类都可以拥有的内容的一部分,例如属性、字段或方法。你可以在你的类中自己定义一个事件,甚至不用使用winforms。
最后,尝试阅读其他同事放置的文档,了解事件和委托确实很有必要,尤其是使用 GUI 创建应用程序。
+= 操作符指示变量将被添加到自身。它等价于:
这是一个附加任务。将变量的值从右向左相加。如果两者都是数字,则将它们相加,如果至少一个是字符串,则将它们连接起来。
以下是有关不同运算符的更多信息: 表达式和运算符
赋值运算符
被称为赋值运算符,它们是在编程之初创建的,目的是简化(缩写)标准算术运算。目前大多数编程语言都支持它们。
运算符表
它们都在相似的语义下运行。
例子
与往常一样,该规则有一个例外,那就是 add 的赋值运算符
+=
,它也用于连接(连接)变量字符串。例子
在一些现代的面向对象编程语言中,它被赋予了一个新的、有点正统的内涵(微软总是带头),那就是订阅事件,这在之前的答案中有更多的解释。
它相当于写作:a = a + b; 在这种情况下,它可以这样写:a += b;