您的位置:首页 > 其它

运算符重载

2016-06-20 12:32 225 查看
#include "iostream"

using namespace std;

class CAdd
{
private:
int m_Left;
public:
CAdd(int a)
{
m_Left = a;
}
CAdd &operator +(int a);
void ShowIt()
{
cout << m_Left << endl;
}
};

CAdd &CAdd::operator +(int a)
{
this->m_Left = this->m_Left + a;
return *this;
}

void main()
{
CAdd obj(4);
obj = obj + 3;   //结果为7
//obj = 3 + obj;  //出错,因为3->m_Left不存在
obj.ShowIt();
}


//全局操作符重载函数
CAdd operator +(int a, CAdd b)
{
return b+a;
}

void main()
{
CAdd obj(4);
obj = 3 + obj;  //正确,结果为7
obj.ShowIt();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: