繁体   English   中英

C#样式问题,ctor变量名称和类属性名称

[英]C# style question, ctor variable names & class property names

尝试按书做所有事情,这是正确的吗?:

public class JollyHockey
{
    public string AnotherCoolProperty { get { return anotherCoolProperty; } }

    string anotherCoolProperty;

    public JollyHockey(string anotherCoolProperty)
    {
         this.anotherCoolProperty = anotherCoolProperty;
    }
}

还是有人对私人类变量使用下划线?

或者您可以这样做:

public class JollyHockey
{
    public string AnotherCoolProperty { get; private set; }

    public JollyHockey(string anotherCoolProperty)
    {
        this.AnotherCoolProperty = anotherCoolProperty;
    }
}

有些人(包括我自己)在私有类变量的前面加上下划线(仅是在何处使用的直观指示)。

这主要是个人(或团队)级别样式的考虑因素,您可以使用所需的内容(或团队进行标准化的内容)。

只要确保您保持一致!

对于它的价值,您还可以在示例中使用自动属性:

public class JollyHockey
{
    public string AnotherCoolProperty { get; private set; }
    public JollyHockey(string anotherCoolProperty)
    {
        AnotherCoolProperty = anotherCoolProperty;
    }
}

我相信您的示例符合MS编码指南。 但是,我不喜欢它,这是您的团队可以同意的。

我不喜欢它的原因是因为基础字段名称经常与方法参数冲突。 我使用下划线明确指出它们是私有变量。

如果函数参数的名称与私有字段的名称相同,

我通常在参数前加上下划线

我觉得很有道理

ReSharper的东西通过fletcher是个好主意

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM