【问题标题】:What is naming convention for C# arrays?C# 数组的命名约定是什么?
【发布时间】:2013-08-06 16:03:35
【问题描述】:
string[] Names = {};
string[] names = {};

使用大写字母更好吗?数组和其他类型的约定是否相同?

【问题讨论】:

  • -4?哎呀,为什么这个问题很糟糕?
  • 一般来说,所有变量都应该有一个lowercaseCamelCase名字。
  • 从该列表的第 1 点开始:meta.stackexchange.com/questions/156810/…
  • @JoelKidd 除了 Jan 的观点之外,even in the help center 是关于如何提问的第一个点。
  • 投票重新打开(或者更确切地说不要删除:),因为它有很好的答案(在删除不相关的无效语法之后它更容易接受)。

标签: c#


【解决方案1】:

您会在 C# 示例和 .NET 框架命名中注意到,一般来说,一切都是 camelCase

  • 所有变量都应该有一个lowercaseCamelCase 名称。
  • 所有类型classstructenumdelegate)、methodsproperties都应该有UppercaseCamelCase(又名PascalCase)名称。

这是一个例子:

// Types are CamelCase
class Foo {

    // Properies are PascalCase
    public int SomeProperty { get; set; }

    // *Private* fields are lowerCamelCase
    private int aField;

    // By some conventions (I use these)
    private int m_anotherField;            // "m_" for "member"
    private static object s_staticLock;    // "s_" for "static"

    // *Public* fields are PascalCase
    public int DontUsePublicFields;        // In general, don't use these
    public const int ConstantNumber = 42;

    // Methods are UpperCase
    // Parameters and variables are lowerCase
    public SomeMethod(int myParameter) {
        int[] localVariable;

        //string names[] = {};     // Not valid C#! 
        string[] names = new string[] { "Jack", "Jill" };
    }
}

另见:

【讨论】:

  • 你能定义一个“类型”吗?
  • UpperCamelCase == PascalCase 在文档中。不仅仅是类型 - 字段和属性应该使用 PascalCase。
  • @JoelKidd 不过,他确实提出了一个有效的观点。您会在 StackOverflow 上发现,作为一个社区,我们高度重视自己的研究,并且基本上试图将 SO 用作“最后的机会,在任何地方都找不到它其他在互联网上,所以让我们弄清楚并 把它放在互联网上”的资源。话虽如此,我可以很简单地扩展我对“类型”这个词的使用。
  • @JonathonReinhart 他确实这样做了,但是你刚刚表达观点的方式比 tnw 的阅读方式更令人愉快。从现在开始,我将使用 SO 作为最后的手段。谢谢你告诉我这个。
  • 变量名是单数还是复数? stackoverflow.com/questions/395739/…
【解决方案2】:

所有这些都有效吗?使用大写字母更好吗?

最后一个 (string names[] = {};) 不是有效的 C#。另外两个在语法上是正确的。

变量的建议大小写取决于使用情况。方法的局部变量或参数通常用小写字母命名(技术上,camelCase),字段属性用大写(技术上,PascalCase)命名。详情请见Capitalization Conventions

请注意,这些约定与变量的类型无关,而与它的用法有关。您正在处理数组的事实不一定要更改变量的名称 - 至少不是变量名称的大写。 (但是,您可能想要使用暗示该变量是某种形式的“集合”的名称。)

话虽如此,这纯粹是一种约定,完全取决于您使用什么命名。

如果最好使用大写字母,这是否意味着将数组视为对象?

大写与变量的处理方式无关 - 仅与它们的类型有关。更改大小写可能会向其他开发人员暗示该类型是字段或属性,但从语言或使用角度来看,它实际上不会以任何方式更改变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-20
    • 2012-11-09
    • 2011-10-06
    • 2022-06-28
    • 2011-03-05
    • 1970-01-01
    相关资源
    最近更新 更多