C#7中本地函数的惯用命名约定是什么

时间:2017-05-04 15:06:51

标签: c# naming-conventions c#-7.0

是否应在 camelCase 中命名本地函数?

public static int Factorial(int n)
{
    return calcFactorial(n);

    int calcFactorial(int number) => (number < 2)
        ? 1
        : number * calcFactorial(number - 1);
}

PascalCase

public static int Factorial(int n)
{
    return CalcFactorial(n);

    int CalcFactorial(int number) => (number < 2)
        ? 1
        : number * CalcFactorial(number - 1);
}

2 个答案:

答案 0 :(得分:4)

我的标准总是PascalCase,也拼出完整的单词。我不喜欢缩写,因为它们可以有多种含义。

因此,在你的PascalCase场景中,我会将'Calc'一词拼出如下:

public static int Factorial(int n)
{
    return CalculateFactorial(n);

    int CalculateFactorial(int number) => (number < 2)
        ? 1
        : number * CalculateFactorial(number - 1);
}

编译器已经出现了一些方法,并且需要一些额外的字节来清楚这个方法的作用,值得进行一些额外的击键。

答案 1 :(得分:0)

对此没有“正确”的答案。

但在我们的团队中,我们将 _PascalCase() 用于本地函数。

我们已经将 _xxx 用于私有变量,并且在函数名前加一个下划线可以明显看出它是本地的(就像它是“私有的”)。使用 PascalCase 有助于区分函数和变量。在使用非 Visual Studio 但使用基本文本编辑器时也非常方便。

public static int Factorial(int n)
{
    return _CalcFactorial(n);

    int _CalcFactorial(int number) => (number < 2)
        ? 1
        : number * _CalcFactorial(number - 1);
}

附言不过,SO 的语法荧光笔不喜欢这个 :)