运算符重载
刚开始学习函数重载操作的时候,碰到解决浅拷贝这个问题,如果两个对象用 = 号连接,我可以直接写个深拷贝构造函数就可以了,为什么还要用重载 = 操作符去解决浅拷贝呢,一直想不明白,其实原因很简单,是因为我没有搞清楚这两种方法的应用场景
如果两个对象用 = 连接,那就存在浅拷贝问题,解决方法根据他们的定义和连接方式决定:
- 拷贝构造函数执行情况:OBJ obj1 ; OBJ obj2 = obj1 ;
- 重载等号操作符 : OBJ obj1 ; OBJ obj2; obj1 = obj2
所以呀,在学习的过程中,千万不能偷懒,尤其是刚开始学习新的知识,眼脑手并用,

本文探讨了C++中的拷贝构造函数和重载赋值操作符的使用。通过示例展示了如何在创建对象时利用拷贝构造函数(如OBJ obj1; OBJ obj2 = obj1;),以及在对象间进行赋值时应用重载的等号操作符(如OBJ obj1; OBJ obj2; obj1 = obj2;)。
最低0.47元/天 解锁文章
586

被折叠的 条评论
为什么被折叠?



