标签: c++ constructor compiler-errors default-parameters
构造
A() { std::cout<<"In A const"; } A(int a = 3) { std::cout<<"In a with default :"<<a; }
创建对象:
A a; A a1(4);
以上代码显示错误:调用过载&#39; A()&#39;含糊不清
答案 0 :(得分:10)
您已为第二个构造函数指定了默认值:
A(int a = 3)
所以这包括以下两个实例: A()和A(3),使第一个定义变得多余
A()
A(3)