c# - 具有完整属性的私有(private)字段初始化

标签 c# properties coding-style

只是一个快速的外观问题...在声明它们的地方初始化完整属性的私有(private)字段是否可以接受,或者普通开发人员会因为我没有将其放入构造函数而咒骂我的名字吗?

private int _linesDataGridHeight = 300;
public int LinesDataGridHeight
{
    get { return _linesDataGridHeight; }
    set { SetProperty(ref _linesDataGridHeight, value); }
}

private bool _isHideLinesCheckboxChecked = false;
public bool IsHideLinesCheckboxChecked
{
    get { return _isHideLinesCheckboxChecked; }
    set
    {
        this.LinesDataGridHeight = value ? 0 : 300;
        SetProperty(ref _isHideLinesCheckboxChecked, value);
    }
}

最佳答案

我认为这主要取决于个人喜好,因为在 C# 中这并不重要。我更喜欢在构造函数中初始化所有内容,因为我可以在一处看到所有初始化值。此外,您的开发团队可能会为此制定一个规则,以达成一致的标准。

这似乎是与另一个 SO 问题类似的帖子,请参见此处:Initialize class fields in constructor or at declaration?

关于c# - 具有完整属性的私有(private)字段初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18384884/

相关文章:

c# - 如何在C#中实现维特比算法来拆分连体词?

由 c# zedgraph : how to use the cursor property?

ios - IndexPath.row 值未存储

c# - 从库而不是数组返回什么集合类型?

javascript - 编写优雅的 JavaScript 而不是 if-then 分支

c# - 具有 WPF KeyDown 事件的多个键

c# - 为什么我不需要在这个冷的 Observable 上发布?

c# - 自动更新属性

python - 在 python 中向 getter 发送参数 : Is this an acceptable solution?

用空格包装运算符的 Emacs 模式/函数