微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

创建将方法返回值的匿名方法

如何解决创建将方法返回值的匿名方法

我正在研究C#项目,我想使用一个匿名方法函数来将值返回给变量。

我尝试过这个:

    byte[] V;
    V= new byte[]()
    {
        //Some code here
        return new byte[]{0,1,2,3};
        
    }

但是我有错误

如何使用匿名方法函数将值返回给V变量?

我只是想知道如何使用匿名方法tat将值返回给变量。

解决方法

有很多机会,各有各的优点和缺点。

  1. 代表

    byte[] V;
    V= new Func<byte[]>(() => ()
    {
        //Some code here
        return new byte[]{0,1,2,3};    
    }();
    
  2. 本地功能

    void DoSomething()
    {
        byte[] V;
    
        byte[]MyLocalFunction()
        {
            //Some code here
            return new byte[]{0,3};
        }
        V = MyLocalFunction();
    }
    
  3. 带有名称的普通私有方法

我个人最喜欢3,因为您的名字清楚地描述了该方法应该执行的操作。 2也有一个名称,实际上它会在您的类中编译为私有静态方法,因此它似乎也很合适。 1只是使您的代码难以理解和阅读。有很多用处,但是在大多数情况下,我不建议使用。

因此,如果您认为成员中应该以某种方式提取某些逻辑,请给它起一个名字。这样,您以后可以根据需要轻松地将其提取到另一个类。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。