+= 是不是注册事件的专用操作符呀?能不能这样理解呢?比如下列的代码,就是注册一个单击事件,其中的 += 运算符,是否可以理解成,就是注册事件用的
专用操作符呢?
        private void Form1_Load(object sender, EventArgs e)
        {
            this.button2.Click += new EventHandler(单击事件); 
        }        void 单击事件(object sender1, EventArgs e1)
        {
            MessageBox.Show("dddd");
        }

解决方案 »

  1.   

    不是,变量也可以用+=i += 1;
    就是 
    i = i+1;
      

  2.   

    当然不是。
    int i=0;
    i+=1;
    string s="";
    s+="abc";
      

  3.   

    i += 1
    等价
    i = i + 1在事件里,+= 被重载。
    click += eventhandler
    等价
    click.add eventhandler
      

  4.   

    但是 click.add eventhandler 会报错呀?
    += 重载的是 add方法 吗,还是 Add 方法,为何都报错呀?+= 到底重载的是哪个方法呢?
      

  5.   

    http://msdn.microsoft.com/zh-cn/library/bb882534.aspxevent EventHandler IDrawingObject.OnDraw
            {
                add
                {
                    lock (PreDrawEvent)
                    {
                        PreDrawEvent += value;
                    }
                }
                remove
                {
                    lock (PreDrawEvent)
                    {
                        PreDrawEvent -= value;
                    }
                }
            }http://msdn.microsoft.com/zh-cn/library/ms366768.aspx
      

  6.   

    我说得不够严谨,实际上你可以理解为 += 对于委托的操作,它是一个语法糖,实际上调用的是 add 方法。这一点是编译器实现的。