如何将参数化构造函数初始化为C++中的默认构造函数?
答
class A
{
A(int a = 0)
{
std::cout << a;
}
};
只是用默认值预定义参数。
答
一个默认的构造,每标准(12.1/4),是:
甲 默认 构造一类 X 是类的构造函数 X 可以在没有一个参数来调用
所以,你只需要提供的参数的默认值:
class Foo
{
public:
Foo(int a = 6)
{
}
};
int main()
{
Foo obj;
}
答
当一个构造函数可以被调用时没有参数时,它被称为默认构造函数。
但是,带参数的构造函数在其参数被赋予默认值时可以变成默认构造函数。
例如:
class String {
public:
String(const char∗ p = ""); // default constructor : empty string
// ...
}