C# 字段大写约定

  • 本文关键字:约定 字段 c#
  • 更新时间 :
  • 英文 :


我的教科书(Visual C# How to Program, 6/e)指出C#中的字段应该使用camelCase。这与 C# 指南中给出的示例相对应Microsoft:https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/fields

public class CalendarEntry
{
    // private field
    private DateTime date;
    // ...
}

然而,官方的Microsoft命名约定明确指出字段应该使用 PascalCase(尽管它们没有像往常那样提供私有字段的示例):https://learn.microsoft.com/en-us/dotnet/standard/design-guidelines/capitalization-conventions

标识符:字段,外壳:帕斯卡,例:

class MessageQueue
{
    public static readonly TimeSpan InfiniteTimeout;
}
public struct UInt32
{
    public const Min = 0;
}

那么,我怎么知道根据 MS 编码约定使用什么情况来保持我的编码风格正确?

AFAIK 没有固定c#惯例......是的,从技术上讲,有一个"官方"约定,但它不是100%遵循的,即使在MS自己的源代码中也是如此,而且许多程序员和/或公司肯定也没有虔诚地遵循它。

考虑到这一点,我的首选约定,也是我迄今为止看到的最好的约定,是在 ReSharper 中默认设置的约定。我强烈建议遵循以下约定:

  • PascalCase 适用于:类、结构、方法、属性、public | internal | protected字段(无论static | readonly | const)和private const字段。
  • _underscorePrefixCamelCaseprivate _fields(const除外)。
  • 驼大小写局部变量。

最新更新