姬長信(Redy)

在现代C和C中不推荐使用f(void)[复制]


参见英文答案 > Is there a difference between foo(void) and foo() in C++ or C?????????????????????????????????????4个
>????????????Understanding the difference between f() and f(void) in C and C++ once and for all????????????????????????????????????4个
我目前正在重构/整理C项目中使用的一些旧C代码,并定期查看以下函数:
int f(void)

我倾向于写作:

int f()

是否有任何理由不在整个代码库中用()替换(void)以提高一致性,或者两者之间是否存在我不知道的细微差别?更具体地说,如果C中的虚拟成员函数被描述为:

virtual int f(void)

派生类包括成员函数:

int f()

这是一个有效的覆盖?另外,基于几乎相同的签名,我是否可能遇到任何链接器问题?