拷贝构造函数是重载的构造函数吗

书上说拷贝构造函数是一种特殊的构造函数,和构造函数一样有默认的情况,有默认的构造函数和默认的拷贝构造函数;而还有一节讲了构造函数的重载,里面没有提到拷贝构造函数;但是按函数的重载的定义:函数名一样,参数列表不一样。这样的定义也符合拷贝构造函数和构造函数的关系,所以不知道拷贝构造函数是不是构造函数的重载。

拷贝构造,如果愿意算是构造函数的重载,一个空类里边是有 默认的构造/析构/拷贝构造和赋值操作符重载四个函数的

class Example
{
};

等价于

class Example
{
public:
  Example() = default;
  ~Example() = default;
  Example & Example(const Example & rhs) = default;
  Example & operator=(const Example & rhs) = default;
};

你可以看看这个里的 2.3.2 节


如果有帮助麻烦给个采纳吧,谢谢了~~