加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#将实例变量复制到同一类函数中的局部变量

发布时间:2020-12-15 18:12:18 所属栏目:百科 来源:网络整理
导读:我最近在一个开源项目上查看了一些代码,发现很多这种代码: class SomeClass{ private int SomeNumber = 42; public ReturnValue UseSomeNumber(...) { int someNumberCopy = this.SomeNumber; if (someNumberCopy ...) { // ... do some work with someNumb
我最近在一个开源项目上查看了一些代码,发现很多这种代码:
class SomeClass
{
    private int SomeNumber = 42;

    public ReturnValue UseSomeNumber(...)
    {
        int someNumberCopy = this.SomeNumber;
        if (someNumberCopy > ...)
        {
            // ... do some work with someNumberCopy
        }
        else
        {
            // ... do something else with someNumberCopy
        }
    }
}

制作实例变量的副本有什么好处吗?

解决方法

否,除非您不想更改SomeNumber的值,并且您打算更新someNumberCopy.就像你要循环次数并且将someNumberCopy减少到零以跟踪计数一样.

我想复制这样的变量可以保护你免受某些外部功能的影响,改变SomeNumber并在执行操作时不知情地更改它.如果该类应该在多线程应用程序中使用,我可能会看到这个.也许不是我会这样做,但这可能是作者的意图.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读