0

您是否遵循任何规则来确定函数参数的顺序?例如,float pow(float x, float exponent)float pow(float exponent, float x). 具体来说,可以使用 C++,但这个问题对所有编程语言都有效。

我主要关注的是可用性,而不是运行时性能。

编辑:一些可能的订购基础可能是:

  • 输入与输出
  • 通常写“公式”的方式,即从左到写的参数。
  • 对函数上下文的参数的特殊性,即,它是“一般”参数,例如系统的单例对象,还是特定的。
4

1 回答 1

1

在您引用的示例中,我认为顺序是根据数学符号 x exponent决定的,其中底数写在指数之前并成为左参数。

除了尝试想象您的用户期望和/或容易记住的内容之外,我不知道任何真正合理的一般原则。std::copy人们甚至没有完全同意在复制(与比较)时是否应该写(源,目标)或(目标,源)std::memcpy,尽管我很确定前者现在更常见。

但是,有很多通用约定,不同的人在不同程度上遵循:

  • 如果该功能被认为主要作用于特定对象,则将其放在首位
  • 被认为是“配置”函数操作的参数位于被认为是函数的主要主题的参数之后。
  • out-params 排在最后(但我怀疑有些人会反过来)

在某种程度上,这并不重要——即您的用户在多大程度上拥有 IDE,在他们键入函数名称时告诉他们参数顺序。

于 2013-01-16T12:58:54.770 回答