假设我有以下课程:
class A
{
public:
A() {
}
A(int a):_a(a){
}
int _a;
};
以及以下功能:
void someFunc (A a)
{
cout << a._a;
}
所以程序中的以下行可以正常工作:
someFunc (5); // Calls A(int a) Constructor.
但以下没有:
someFunc(); //Compile error
可以预期,如果它可以在获取整数时构建 A,那么为什么不使用默认构造函数也构建一个,当不带参数调用时呢?