c++ 运算符重载
class number
{
private:
int a;
public:
number operator +(number &n1);
}
....
main()
{
number A,B;
B = A + 2;
B = 2 + A;
}
.....
B = A + 2;这个可以但是B = 2 + A不行;
如何实现常量在前的这种形式?实现“常量+对象”
[解决办法]
#include <iostream>using namespace std;class number{ friend number operator+(const number&, const number&);private: int a;public: number(const int val = 0) { this->a = val; }};number operator+(const number &n1, const number &n2) { return number(n1.a + n2.a);}int main(){ number A, B; B = A + 2; B = 2 + A; return 0;}