原文链接:http://blog.youkuaiyun.com/lyh__521/article/details/49622601
复合赋值运算符
形如‘*=’、‘+=’、‘/=’等这样的运算符称为复合赋值运算符,它们其实是算术运算和赋值运算的结合,即先执行算术运算,得到的值再赋值给左侧对象。
重载复合赋值运算符:
- 赋值运算符必须定义为类的成员,复合赋值运算符通常也应该定义为成员函数(但并不是必须这样)。
- 复合赋值运算符函数返回左侧对象的引用(为了与内置的复合赋值运算符保持一致)。
下面是一个例子:
//重载了 += 运算符
#include<iostream>
using namespace std;
class Goods{
public:
//构造函数
Goods(int x=0,double y=0.0){
num = x;
money = y;
}
//重载复合赋值运算符
Goods &operator+=(const Goods &gd2){
num += gd2.num;
money += gd2.money;
return *this;
}
//打印类的内容
void print(){
cout<<num<<"

本文深入解析了C++中复合赋值运算符的原理和实现方式,包括如何重载这些运算符以及它们在类中的应用。详细介绍了复合赋值运算符的语法、特性以及如何在实际编程中使用它们来简化代码。
最低0.47元/天 解锁文章
662

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



