原型方法中的参数名称(头函数中的变量名)

时间:2012-11-05 10:41:36

标签: c++ methods

  

可能重复:
  Should function declarations include parameter names?

在C ++头文件中,您需要提供函数原型的名称,返回类型和参数的类型。您无需指定参数的名称。 例如:

double fraction(double numerator, double denominator);

VS

double fraction(double, double);

写一个参数的名字有优势吗?可读性? 编译或效率有什么不同吗?

4 个答案:

答案 0 :(得分:1)

将参数名称保留在头文件中的主要原因是为了保持一致性和可读性。如果您有删除它们的策略,则无法再从cpp文件复制/粘贴声明。

如果您正在使用像doxygen这样的文档引擎,那么这也可能为您提供保留参数名称的有力理由,因为文档引擎倾向于解析标题,并且如果您已包含参数名称,则会提供更好的输出。 / p>

除此之外,没有严格的理由保留它们。

答案 1 :(得分:1)

效率没有区别。在标题中省略名称应该同步,在实现文件中省略它。在那里你可以省略它,如果你的impl没有使用那个arg,那么每个人都可以通过查看参数列表看到一个arg被使用或者没有(并且一些编译器在arg有一个名字时发出警告,但是不是'用于实施。希望有帮助...

答案 2 :(得分:1)

编译没有区别。 (可能解析后来会很快,因为它必须解析更少的代码,但是谁在乎呢?)。

最大的好处在于可读性。在第二种情况下,用户如何区分哪个是分子?哪个是分母?

答案 3 :(得分:1)

正如你所说,你把它们放在那里,所以看到标题的人理解这些参数的目的。