草庐IT

anonymous-methods

全部标签

c# - 避免或接受中断编辑并继续的 C# 构造?

我开发和维护一个用C#2.0编写的大型(500k+LOC)WinForms应用程序。它是多用户的,目前部署在大约15台机器上。系统的开发正在进行中(可以被认为是永久测试版),并且几乎没有采取任何措施来保护用户免受每周构建中可能引入的潜在新错误的影响。出于这个原因,除其他外,我发现自己变得非常依赖调试器中的“编辑并继续”。它不仅有助于查找错误和修复错误,在某些情况下还有助于持续开发。我发现能够在正在运行的应用程序的上下文中执行新编写的代码非常有值(value)-无需重新编译并向新代码添加特定的入口点(必须添加虚拟菜单选项、按钮等)应用程序并记住在下一次生产构建之前删除它们)-一切都可以在

c# - 使用条件 (? :) operator for method selection in C# (3. 0)?

我正在重构一些代码。现在有很多地方有这样的功能:stringerror;if(a){error=f1(a,long,parameter,list);}else{error=f2(the_same,long,parameter,list);}在重构f1和f2(它们很大,但做类似的事情)之前,我想重构为:stringerror=(a?f1:f2)(a,long,parameter,list);就像在C中所做的那样。(函数签名是相同的)但是我得到一个错误:“错误13无法确定条件表达式的类型,因为‘方法组’和‘方法组’之间没有隐式转换”这将使我能够通过初始重构来识别参数列表是相同的,从而提供不

c# - 使用条件 (? :) operator for method selection in C# (3. 0)?

我正在重构一些代码。现在有很多地方有这样的功能:stringerror;if(a){error=f1(a,long,parameter,list);}else{error=f2(the_same,long,parameter,list);}在重构f1和f2(它们很大,但做类似的事情)之前,我想重构为:stringerror=(a?f1:f2)(a,long,parameter,list);就像在C中所做的那样。(函数签名是相同的)但是我得到一个错误:“错误13无法确定条件表达式的类型,因为‘方法组’和‘方法组’之间没有隐式转换”这将使我能够通过初始重构来识别参数列表是相同的,从而提供不

Python之解决报错:TypeError: unsupported operand type(s) for /: ‘builtin_function_or_method‘ and ‘float‘

开门见山哈家人们,首先解决方法:查找报错内容相关的代码,找到源头,添加小括号。解释如下:在运行Python程序的时候,报了个错,找了半天没找到什么原因。TypeError:unsupportedoperandtype(s)for/:'builtin_function_or_method'and'float'因为给的报错信息在94行,反反复复盯着94行以及附近找了半个多小时,最后百度了半天发现问题出在了19行原因很简单:问题出现在mean后面没有括号,如果没有()表示把mean方法赋值给cost_mean,而不是把返回值给cost_mean,导致代码认为cost.mean是一个内部方法,不能做'

c# - 什么时候调用重写的方法中的base.Method(),团队写代码时如何标记?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭去年。Improvethisquestion当使用某些框架/api时,有时不清楚是否必须调用base.Method如果您覆盖它,例如,您可以非常确定在覆盖事件调用器时应该调用base.Maethod(),以便传播事件,在其他情况下可能不太清楚,尤其是在没有源代码可用且没有注释的情况下。我想知道其他程序员如何决定在这种情况下他们是否应该调用基方法,如果你要编写一些框架如何通知其他程序员你希望在虚拟成员中调用或不调用基方法。

c# - 什么时候调用重写的方法中的base.Method(),团队写代码时如何标记?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭去年。Improvethisquestion当使用某些框架/api时,有时不清楚是否必须调用base.Method如果您覆盖它,例如,您可以非常确定在覆盖事件调用器时应该调用base.Maethod(),以便传播事件,在其他情况下可能不太清楚,尤其是在没有源代码可用且没有注释的情况下。我想知道其他程序员如何决定在这种情况下他们是否应该调用基方法,如果你要编写一些框架如何通知其他程序员你希望在虚拟成员中调用或不调用基方法。

c# - 错误 : The Out Parameter must be assigned before control leaves the current method

发送回参数时出现此错误Error:TheOutParametermustbeassignedbeforecontrolleavesthecurrentmethod代码是publicvoidGetPapers(stringweb,outintId1,outintId2){SqlConnectionconn=newSqlConnection(ConnectionString());conn.Open();SqlCommandcmd=newSqlCommand("GetPapers",conn);cmd.CommandType=CommandType.StoredProcedure;cmd.

c# - 错误 : The Out Parameter must be assigned before control leaves the current method

发送回参数时出现此错误Error:TheOutParametermustbeassignedbeforecontrolleavesthecurrentmethod代码是publicvoidGetPapers(stringweb,outintId1,outintId2){SqlConnectionconn=newSqlConnection(ConnectionString());conn.Open();SqlCommandcmd=newSqlCommand("GetPapers",conn);cmd.CommandType=CommandType.StoredProcedure;cmd.

c# - Lambda 表达式与匿名方法

这个问题在这里已经有了答案:delegatekeywordvs.lambdanotation(6个答案)关闭8年前。我想知道有什么区别。目前我正在学习这些东西,在我看来这些都是一样的:delegatevoidX();XinstanceOfX;instanceOfX=delegate(){code};instanceOfX=()=>{code};此外,如果lambda更新,我是否应该只使用lambda而忘记匿名方法?

c# - Lambda 表达式与匿名方法

这个问题在这里已经有了答案:delegatekeywordvs.lambdanotation(6个答案)关闭8年前。我想知道有什么区别。目前我正在学习这些东西,在我看来这些都是一样的:delegatevoidX();XinstanceOfX;instanceOfX=delegate(){code};instanceOfX=()=>{code};此外,如果lambda更新,我是否应该只使用lambda而忘记匿名方法?