在C++中,只有默认参数的构造函数是默认构造函数

In C++, is a constructor with only default arguments a default constructor?

本文关键字:默认 构造函数 参数 C++      更新时间:2023-10-16

在下面的代码中:

struct Foo
{
    Foo(int x=0);
};
构造函数

是否算作默认构造函数?

C++98 §12.1/5(强调我的)

类 X 的默认构造函数是 X 的构造函数,无需参数即可调用。如果类 X 没有用户声明的构造函数,则隐式声明默认构造函数。

所以是的,它确实算作默认构造函数。 另请参阅。