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

时间:2012-06-28 18:23:06

标签: c++ constructor default-constructor default-arguments

在以下代码中:

struct Foo
{
    Foo(int x=0);
};

构造函数是否算作默认构造函数?

1 个答案:

答案 0 :(得分:18)

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

  

类X的默认构造函数是 X的构造函数,可以在没有参数的情况下调用。如果类X没有用户声明的构造函数,则隐式声明默认构造函数。 / p>

所以是的,它确实算作默认构造函数。 See also