gpt4 book ai didi

递归内部函数的 C# 命名约定?

转载 作者:太空狗 更新时间:2023-10-29 18:27:54 26 4
gpt4 key购买 nike

C# 对常见的方法类型有一些命名约定:

  • BeginFoo()/EndFoo() 用于异步方法
  • TryGet()/TryParse() 返回 false 而不是抛出异常
  • FooOrDefault() 用于返回 default(T) 而不是抛出异常的方法
  • IsFoo 用于 bool 标志

我想知道,是否有用于递归内部方法的方法?例如在 this example from another Stack Overflow question :

public int CalculateSomethingRecursively(int someNumber)
{
return doSomethingRecursively(someNumber, 0);
}

// What to call this?
private int doSomethingRecursively(int someNumber, int level)
{
if (level >= MAX_LEVEL || !shouldKeepCalculating(someNumber))
return someNumber;
return doSomethingRecursively(someNumber, level + 1);
}

在 C 中,我看到人们使用 foo(...) + foo_r(...) 作为约定。但是在 .NET 中呢?

最佳答案

我个人可能会称它为 CalculateSomethingRecursivelyImpl - 我倾向于使用 Impl 作为“实际上完成方法大部分工作的私有(private)方法”的后缀它具有相同的名称但没有后缀。”它是递归的这一事实对我来说不会改变这一点 - 但这只是个人选择。

老实说,这样的方法大概总是私有(private)的——所以它几乎没有公共(public)/ protected 方法那么重要。只需与您的其他团队成员制定一个约定即可。

关于递归内部函数的 C# 命名约定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7814070/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com