C#中+=是什么及如何使用

寻技术 C#编程 2023年09月15日 119

这篇“C#中+=是什么及如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#中+=是什么及如何使用”文章吧。

C#中+=是什么意思

在C#中, "+="有两种运用场合。

第一种,用在数值后面作为逻辑运算符,自加变量,如:

int i=0;
for(int j=0;j<5;j++)
{
i+=5;
}

这里i+=5表示i=i+5;

i的最终结果是25;

第二种,用于指定响应事件时要调用的方法;

这类方法称为事件处理程序,叫注册/订阅事件,用在操作类名后,比如

winForm.Closed += new EventHandler(child_Closed);

这句话意思是winForm的关闭结束事件订阅child_Closed方法,变量句柄类型为EventHandler常规事件句柄类型

再如 :

basisMstPage.btnClick_PageHandler += new EventHandler(this.BasisMasterPageButton_Click);

在此上下文中使用 += 运算符称为“注册事件”。

这里是 C# 事件绑定(注册、订阅)的特写用法,表示事件的处理程序集合中添加一个事件处理程序,它也有对应的 -= 来去掉之前 += 的事件处理程序。

但事件发生时,所有此事件的处理程序集合中的处理程序都会依次调用。

C#中+= (s, e) =>这些字符什么意思

public MainWindow()
{
InitializeComponent();
this.Loaded += (s, e) => DiscoverKinectSensor();
this.Unloaded += (s, e) => this.kinect = null;
}

在上面的代码中,+=是在委托链上增加一个委托,(s,e) =>是一个lambda表达式,这个表达式创建一个委托,委托处理的主体就是=> 后面的部分。

其实这个写法相当于

this.Loaded += new EventHandler(Form_Loaded);

private void Form_Loaded(object sender,   EventArgs e) {
    DiscoverKinectSensor();
}
关闭

用微信“扫一扫”