在C#中,在使用delegate的时候,如果被代理的函数有返回值,不为void时,在对delegate进行申请空间并绑定函数的时候就会有一个警告 
如:delegate sting Delgate(int); 
Delegate dele += new Delegate(sort); 就会出现如下警告 
warning C4358: '+=': return type of combined delegates is not 'void'; returned value is undefined 
请问如何消除警告?

解决方案 »

  1.   

    使用单委托:
    如:delegate sting Delgate(int); 
    Delegate dele = new Delegate(sort);
      

  2.   

    最好不要有返回值,你可以用ref 參數來代替返回值的功能。
      

  3.   

    多重委托使用时,即使有返回值也无法得到确定返回值;.net中的多重委托没有返回值!
      

  4.   

    委托可以有返回值
    你的问题是
    Delegate 是.net 框架自有的类 ,代表委托不要用Delegate 换个名字