C++加号运算符重载
作用:实现两个自定义数据类型相加的运算。(减、乘、除类似)
#include<iostream> using namespace std; class WLM { public: //1.成员函数加号运算符重载 //WLM operator+(WLM &wlm1) //{ // WLM tmp; // tmp.m_a = this->m_a + wlm1.m_a; // tmp.m_b = this->m_b + wlm1.m_b; // return tmp; //} int m_a; int m_b; }; //2.全局函数加号运算符重载 WLM operator+(WLM &wlm2,WLM &wlm3) { WLM tmp; tmp.m_a = wlm2.m_a + wlm3.m_a; tmp.m_b = wlm2.m_b + wlm3.m_b; return tmp; } void test1() { WLM wlm1; wlm1.m_a = 10; wlm1.m_b = 10; WLM wlm2; wlm2.m_a = 10; wlm2.m_b = 10; WLM wlm3; wlm3 = wlm1 + wlm2; WLM wlm4; //wlm4 = wlm1.operator+(wlm2); WLM wlm5; wlm5 = operator+(wlm1,wlm2); cout << "wlm3.m_a = " << wlm3.m_a << endl << "wlm3.m_b = " << wlm3.m_b << endl; /*cout << "wlm4.m_a = " << wlm4.m_a << endl << "wlm4.m_b = " << wlm4.m_b << endl;*/ cout << "wlm5.m_a = " << wlm5.m_a << endl << "wlm5.m_b = " << wlm5.m_b << endl; } int _tmain(int argc, _TCHAR* argv[]) { test1(); system("pause"); return 0; }

浙公网安备 33010602011771号