C#;在不单独声明方法的情况下创建新代理?

前端之家收集整理的这篇文章主要介绍了C#;在不单独声明方法的情况下创建新代理?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我能够编译包含这个的代码
OperationDelegate myOpDelegate;
static OperatorDefinition[] definitions ={
                new OperatorDefinition("+",2,3,true,new OperationDelegate(OperationAdd)),};
delegate double OperationDelegate(double[] args);
static double OperationAdd(double[] args)
            {
                return args[0] + args[1];
            }

但我认为如果我能做更像这样的事情,我的代码看起来会更清晰:

OperationDelegate myOpDelegate;
static OperatorDefinition[] definitions ={new OperatorDefinition("+",new OperationDelegate({return args[0]+args[1]}))};
delegate double OperationDelegate(double[] args);

因为我想在一个地方定义每个OperatorDefinition的所有内容,而不是单独定义这些函数.有没有办法在C#中做到这一点?

(对我的代码的任何其他批评也是受欢迎的)

解决方法

查看匿名方法…例如: C# – Anonymous delegate

猜你在找的C#相关文章