草庐IT

c++ - C++ 或 C 中的 foo(void) 和 foo() 有区别吗?

考虑这两个函数定义:voidfoo(){}voidfoo(void){}这两者有什么区别吗?如果不是,为什么有void参数?审美原因? 最佳答案 在C中:voidfoo()表示“一个函数foo采用未指定数量的未指定类型的参数”voidfoo(void)表示“一个函数foo不带参数”在C++中:voidfoo()表示“一个函数foo不带参数”voidfoo(void)表示“一个函数foo不带参数”因此,通过编写foo(void),我们实现了跨两种语言的相同解释并使我们的标题多语言(尽管我们通常需要对标题做更多的事情以使它们真正交叉-l

c++ - C++ 或 C 中的 foo(void) 和 foo() 有区别吗?

考虑这两个函数定义:voidfoo(){}voidfoo(void){}这两者有什么区别吗?如果不是,为什么有void参数?审美原因? 最佳答案 在C中:voidfoo()表示“一个函数foo采用未指定数量的未指定类型的参数”voidfoo(void)表示“一个函数foo不带参数”在C++中:voidfoo()表示“一个函数foo不带参数”voidfoo(void)表示“一个函数foo不带参数”因此,通过编写foo(void),我们实现了跨两种语言的相同解释并使我们的标题多语言(尽管我们通常需要对标题做更多的事情以使它们真正交叉-l