友元运算符重载

来源:互联网 发布:飞行仿真软件 编辑:程序博客网 时间:2024/05/16 15:11

运算符就是一种特殊的函数

运算符重载可以是普通函数

const Money operator + (const Money& a1,const Money& a2);

可以是成员函数

const Money operator + (const Money& a2) const;

当二元运算符作为成员函数进行重载时,只有一个参数。调用对象相当于以前函数的第一个参数,即第一个参数不用写

假设Money类里有数据成员a和b

const Money Money::operator + (const Money& a2) const{    int k1 = a + b;    int k2 = a2.a + a2.b;}

如果是友元函数的话

friend const Money operator + (const Money& a1,const Money& a2);

定义时,可以直接访问类的成员变量

const Money operator + (const Money& a1,const Money& a2){    int k1 = a1.a + a1.b;    int k2 = a2.a + a2.b;}


0 0
原创粉丝点击