13.拷贝构造函数
- 1.拷贝构造函数的作用:本质上拷贝构造函也是一种构造函数
- 2.拷贝构造函数的调用时机:与普通的构造函数不同的是,当用一个对象创建另一个对象时才调用拷贝构造函数
- 3.缺省拷贝构造函数的作用:如果我们自己没有书写拷贝构造函数,默认情况下系统会创建默认拷贝构造函数,默认的拷贝构造函数就是完全将对象1拷贝给对象2,以memcpy的形式
- 4.如何自己创建拷贝构造函数
//前面已有CStudent的构造函数
class CStudent
{
CStudent(){};//构造函数
//拷贝构造函数
CStudent(CStudent& obj)
{
printf("拷贝构造函数");
}
//CStudent(CStudent& obj) = delete;//禁用默认的拷贝构造函数
//CStudent(CStudnet& obj) = default;//使用默认的拷贝构造函数
}
int main()
{
CStudent stu1;
CStudent stu2 = stu1;//使用stu1这个对象创建stu2时,调用默认拷贝构造函数
}