C++:赋值重载
赋值重载是类的六个默认成员函数之一,这里的默认是指我们不写,编译器会自己生成的。
void operator=(date d2)
{_year=year;_month=month;_day=day;
}
1.默认生成的赋值重载:
它的行为与拷贝构造是一样的,对于内置类型完成值拷贝,对于自定义类型调用自身的赋值重载。
2.区分拷贝构造和赋值重载:
拷贝构造是一个已经存在的对象去初始化另一个要创建的对象,重在创建
赋值重载是两个已经存在的对象进行拷贝。
date d1(2025,5,10);
date d2=d1;//1
date d3(d1);//2
d3=d2;//3
1是拷贝构造,因为创建了新的对象
2也是拷贝构造
3是赋值重载