C# 直接赋值或使用私有(private) setter

标签 c# wpf setter

我目前正在开发一个 WPF 项目,我的大多数属性都有两个内部赋值选项:

private int counter = 0;
public int Counter {
    get {
        return counter;
    }
    private set {
        counter = value;
    }
}
  1. 通过私有(private) setter 进行分配 计数器 = 1;

  2. 直接将值赋给私有(private)对象 计数器 = 1;

哪种是内部赋值(在类本身中)的首选方法?使用其中一种比另一种有什么好处吗?

最佳答案

我会使用该属性(property)。如果您发现稍后必须更改属性行为,它将为您提供更大的灵 active - 您将无法使用字段来做到这一点。

顺便说一句。为什么不使用自动属性?

public int Counter { get; private set; }

您不必使用 0 初始化字段。这是 int 的默认值,因此无论如何都会完成。

关于C# 直接赋值或使用私有(private) setter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20873139/

相关文章:

c# - 正则表达式 : which pattern would return true if both exact words were found?

javascript - Ajax响应: Map JSON to HTML

c# - 验证列表对象值

c# - 使用文本框更改 Canvas 颜色

.net - 转换 BitmapImage 后未释放内存

validation - 验证实体中的值 - 通过 setter 或断言验证?

c# - 使用 lambda 为通用列表中的每个对象执行方法

c# - 更新 wpf 中的 UI 元素

使用结构体和函数进行 C 编程

javascript - 如何从 Javascript 对象中删除所有 getter 和 setter 并保持纯值