C#;在不单独声明方法的情况下创建新代理?
发布时间:2020-12-15 18:23:32 所属栏目:百科 来源:网络整理
导读:我能够编译包含这个的代码: OperationDelegate myOpDelegate;static OperatorDefinition[] definitions ={ new OperatorDefinition("+",2,3,true,new OperationDelegate(OperationAdd)),};delegate double OperationDelegate(double[] args);static double
我能够编译包含这个的代码:
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
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |