<分区>
我注意到当我在 Visual Studio 中创建一个新的 C++ 类时,它会记下 Foo(void)
和 ~Foo(void)
作为构造函数和析构函数模板而不是 Foo()
和 ~Foo()
。但是,这两个版本似乎都有效。两者之间有区别还是我使用哪个版本根本无关紧要?
标签 c++
<分区>
我注意到当我在 Visual Studio 中创建一个新的 C++ 类时,它会记下 Foo(void)
和 ~Foo(void)
作为构造函数和析构函数模板而不是 Foo()
和 ~Foo()
。但是,这两个版本似乎都有效。两者之间有区别还是我使用哪个版本根本无关紧要?
最佳答案
在 C++ 中,两者在技术上是相同的,如“不带参数的函数”
更多信息:
然而,在 C 中,Foo(void) 是“一个不带参数的函数”,而 Foo() 是“一个带未知数量参数的函数”。这些参数属于未指定的类型。
Foo(void) 在两种语言中的使用具有相同的含义。
关于C++:constructor() 和 constructor(void) 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27671134/