int k=delegate(int d)
            {
                return ++d;
            }(4);报错,"应输入方法名称". 应该怎样改?

解决方案 »

  1.   

    这样用第一次见到这么用的
    你可以这样 你定义的委托 d = delegate(int d)
                {
                    return ++d;
                };
    然后再int k = d(4);
      

  2.   

    参考:
    http://topic.csdn.net/u/20090627/17/ae3a38bb-cf15-4c73-9a30-1e1260a15237.html?18282
      

  3.   


    我的意思是把定义委托这一步去掉撒,匿名撒,呵呵.
    javascript下可以这样用
      

  4.   

    不过可以这样:
    Func<int,int> d=delegate(int d) 
                { 
                    return ++d; 
                }; 
    d(4);
      

  5.   


    我错了,貌似在.net 3.0以上可以实现这个效果:int i = new Func<int, int>(j => ++j).Invoke(4);