C#访问者应该使用私有变量还是动态计算?

C#访问者应该使用私有变量还是动态计算?,第1张

概述哪个是更好的编程习惯,为什么? 我有一个这样的课: class data { public double time { get; internal set; } public double count { get; internal set; } public average_count { ... }} 其中average_count应为read_only并计算计数 哪个是更好的编程习惯,为什么?

我有一个这样的课:

class data {    public double time { get; internal set; }    public double count { get; internal set; }    public average_count { ... }}

其中average_count应为read_only并计算计数/时间.

访问者编写为:

public average_count { get {    return (time == 0) ? 0 : (count / time);}}

或者我应该做以下事情:

private _avg_count;public average_count {    get     {        return _avg_count;    }    internal set    {        return _avg_count;    }}

在时间和计数集访问器中更新_avg_count的位置?

看起来第一个更容易阅读,但如果经常访问average_count可能会更慢.编译器优化是否会使差异无关紧要?

解决方法 即时执行会产生更易读的代码.预先计算可以提高性能,但是只有在(a)有必要和(b)您已经分析并且它有所不同时,您才应该这样做.

最重要的是,可读性和可维护性只有在绝对必要时才能牺牲性能.

总结

以上是内存溢出为你收集整理的C#访问者应该使用私有变量还是动态计算?全部内容,希望文章能够帮你解决C#访问者应该使用私有变量还是动态计算?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1226320.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存