我想知道以下两个声明在头文件中的区别 我遇到过这两种风格
void some_method(int);
,第二种风格是:
void some_method(int a);
一种风格是否比另一种风格有任何好处。对我来说,一个样式只是没有变量的名称,变量的名称必须在随附的cpp文件中实现。
答案 0 :(得分:9)
功能没有区别,但我经常使用参数名作为文档形式,如下所示:
void verbTheThing(int verbId, int thingId);
当我没有任何有价值的东西可以添加时,我只是不添加它:
int max(int, int);
答案 1 :(得分:4)
主要关注点是一致性。选择一个并坚持下去。我个人更喜欢第二个,因为参数名称可以描述自我记录的功能和代码比替代品更好。
答案 2 :(得分:3)
主要区别在于可读性。第二个版本更长,但拥有参数的名称可能是一个真正的帮助。小例子:
int move(int, int, int, int);
int move (int fromX, int fromY, int toX, int toY);
答案 3 :(得分:2)
当您输入(
括号时,某些开发环境(Visual Studio,Borland C ++ Builder,例如,eclipse也应该具有此功能)会自动列出函数参数。
对于那些IDE,通常礼貌地确保函数参数名称(在标题内)尽可能具有描述性,因为它们用作文档。
即使程序员没有具有此功能的IDE,转发函数声明(在标题中)也应始终尽可能具有描述性。出于同样的原因 - 更容易打开标题并读取函数参数应该是什么意思,而不是在*.cpp
个文件中寻找函数体。
更不用说在某些功能中,如果没有参数名称,您无法确定哪些参数应该是什么意思。
例如,
Image::blitRect(int, int, int, int);
可能是
Image::blitRect(int x1, int x2, int y1, int y2);
Image::blitRect(int x1, int y1, int x2, int y2);
Image::blitRect(int x, int y, int width, int height);
当然,在这种情况下,C ++程序员会为Point和Size添加类,但这是另一个故事。
答案 4 :(得分:1)
就编译而言,两者都没有,有任何区别。但第二个更好,因为给参数命名可以提高代码的可读性并帮助人们更好地理解它
答案 5 :(得分:1)
这两个选项都有效。但是在头文件中指定参数名称可以极大地帮助读取函数签名的人快速弄清楚它实际上做了什么以及参数代表什么数据。
答案 6 :(得分:0)
实际上,它们之间没有区别。 它归结为你宣布你的方法的地方...... 例如,如果在“main()”func之前声明函数。 你可能不需要关心参数名称。但是,先于方法 声明你必须在defintion中介绍你的参数名称。 它只是代码风格,使您和任何人都能阅读您的代码