上面的人类中有多少个构造函数?

时间:2015-07-10 20:17:44

标签: c++

考虑以下类的实现

class person {
private: 
 int age;
 int getAge();
 void setName(string);
public:
 string name;
 person(int , string);
 person(string);
 person();
 void setAge(int);
 string getName();
}

上面的人类中有多少个构造函数?

1
2
3
7
?

2 个答案:

答案 0 :(得分:3)

person中有4或5个构造函数 您自己定义的3,以及编译器生成的复制构造函数。

如果使用C ++ 11,则特定规则决定是否为您生成移动构造函数,请参阅herehere

答案 1 :(得分:0)

我计算了五个构造函数,因为我手上有5个手指。:)但是在可能的答案中

1
2
3
7

没有数字5的答案。所以我在想是只有我手上有5个手指或者其他人不能算到5个。:)