求助:今天在校内看到C++主页君发了一个关于构造函数的程序,我没搞明白,特来求助!
程序代码:
#include <iostream> using namespace std; class Foo { public: Foo() { cout <<"1"<< endl; } Foo(int a = 4) { cout << a << endl; } }; int main() { Foo a(3); Foo b(); return 0; }结果输出是3
首先,结果输出为什么不是31?
根据函数重载:无参调用也可以调用默认参数函数,那又为什么没有调用默认参数函数?