【发布时间】:2012-08-30 12:36:08
【问题描述】:
这个问题更多的是性能问题而不是优雅,我为自己说话,但是......
有两个选项来实现,这对于 cpu 计算来说更快,或者如果最后它是相同的(我倾向于认为是,因为条件是 (x
public int DidLogcount = 0; // DidLogCount is raised by +1 every time we deside, then condition is met
public bool MoreLogsAllowed()
{
if (DidLogcount < 10) return true;
else return false;
}
对
public bool MoreLogsAllowed()
{
return DidLogcount < 10;
}
我们大部分时间都想检查它是否不为空,但如果必须,它会影响这两种情况,所以如果我没有错过任何其他问题,我猜我只是缩小了范围(?)。
我会应用正确的答案。 谢谢。
编辑: 我只是想标记正确的答案,但在加载了 3 个以上的页面上进行了刷新......
将等待获得更多选票...现在,我真的要感谢大家!为了分享您的知识,我确实想到了编译器的优化问题,所以......虽然这些打印输出显示了一些东西,尽管它本身的差异很小,但是当添加到一堆条件时,它就更少了little ,除非我们谈论的是一个真正复杂的应用程序,否则我不会说 big 。 我应该说,性能问题从来都不是小问题,还有逻辑和可读性 感谢@Steve 和@Nick 为我们实际测试它。
【问题讨论】:
-
类似于 [this previous SO question][1] [1]: stackoverflow.com/questions/2977365/…
标签: c# c#-4.0 coding-style boolean logic