private const int THE_ANSWER = 42;

or

private const int theAnswer = 42;

我个人认为,在现代ide中,我们应该使用camelCase,因为ALL_CAPS看起来很奇怪。你怎么看?


当前回答

把匈牙利语留给匈牙利人吧。

在这个例子中,我甚至会省略最终文章,直接使用

private const int Answer = 42;

这就是答案,还是这就是答案?

*按照帕斯卡的严格正确进行编辑,但我认为这个问题是在寻求更多关于生命、宇宙和一切的答案。

其他回答

我实际上倾向于在这里使用PascalCase -但出于习惯,我对UPPER_CASE感到内疚…

推荐的命名和大写约定是对常量使用pascalcase (Microsoft有一个名为StyleCop的工具,它可以记录所有首选的约定,并可以检查您的源代码是否符合—尽管对于许多人的口味来说,它有点太过于保留了)。如。

private const int TheAnswer = 42;

Pascal大写约定也记录在微软的框架设计指南中。

ALL_CAPS是取自C和c++的工作方式,我相信。这篇文章解释了风格差异是如何产生的。

在Visual Studio等新的IDE中,很容易识别类型、范围以及它们是否恒定,因此这不是严格必要的。

FxCop和Microsoft StyleCop软件将帮助您提供指导方针并检查您的代码,以便每个人都以相同的方式工作。

从视觉上看,大写是可行的。这样很容易辨认。 为了唯一性和不留下猜测的机会,我投票给UPPER_CASE!

const int THE_ANSWER = 42;

注意:当常量在页面顶部的同一文件中使用时,大写将很有用,并且用于智能感知目的;然而,如果它们被移动到一个独立的类中,使用大写并不会有太大的区别,例如:

public static class Constant
{
    public static readonly int Cons1 = 1;
    public static readonly int coNs2 = 2;
    public static readonly int cOns3 = 3;
    public static readonly int CONS4 = 4;
}

// Call constants from anywhere
// Since the class has a unique and recognizable name, Upper Case might lose its charm
private void DoSomething(){
var getCons1 = Constant.Cons1;
var getCons2 = Constant.coNs2;
var getCons3 = Constant.cOns3;
var getCons4 = Constant.CONS4;
 }

首先,匈牙利符号是使用前缀来显示参数的数据类型或预期用途的实践。 微软的命名惯例对匈牙利符号说不 http://en.wikipedia.org/wiki/Hungarian_notation http://msdn.microsoft.com/en-us/library/ms229045.aspx

不鼓励使用大写: Pascal Case是可接受的惯例和尖叫帽。 http://en.wikibooks.org/wiki/C_Sharp_Programming/Naming

微软还在这里声明,如果要匹配现有的方案,则可以使用UPPERCASE。 http://msdn.microsoft.com/en-us/library/x2dbyw72.aspx

这差不多就是总结了。