复制构造函数
是一种特殊的构造函数,它在创建对象时,是使用同一类中之前创建的对象来初始化新创建的对象。
复制构造函数通常用于:
通过使用另一个同类型的对象来初始化新创建的对象。
复制对象把它作为参数传递给函数。
复制对象,并从函数返回这个对象。
demo认识复制构造函数
#include <iostream>
#include <string>
using namespace std;class People
{
public:string mName;string mSex;int mAge;public:People(string name, string sex, int age); // 普通的构造函数People(People ©People); // 复制或者拷贝构造函数void getInfor();
};
// 构造函数
People::People(string name, string sex, int age)
{mName = name;mSex = sex;mAge = age;
}
// 复制或者拷贝构造函数
People::People(People ©People)
{mName = copyPeople.mName;mSex = copyPeople.mSex;mAge = copyPeople.mAge;
}void People::getInfor(){cout<<"姓名:"<<mName<<",性别:"<<mSex<<",年龄:"<<mAge<<endl;
}int main()
{People people1("张三","男",17);People people2(people1);people2.getInfor();return 0;
}
打印结果: