=============Calculator.h=============
#include <iostream>
using namespace std;
class Calculator{
unsigned int count;
public:
Calculator(unsigned int i=0):count(i){};
Calculator operator++(){return *(new Calculator(++count));};
Calculator operator++(int){return *(new Calculator(count++));};
Calculator operator--(){return *(new Calculator(--count));};
Calculator operator--(int){return *(new Calculator(count--));};
Calculator operator+(Calculator);
Calculator operator-(Calculator);
friend ostream& operator<<(ostream&,Calculator);
};
Calculator Calculator::operator+(Calculator B){
Calculator C;
C.count=this->count+B.count;
return C;
}
Calculator Calculator::operator-(Calculator B){
Calculator C;
C.count=this->count-B.count;
return C;
}
ostream &operator<<(ostream &os,Calculator C){
os<<C.count;
return os;
}
=============main.cpp=============
#include "Calculator.h"
void main(){
Calculator c1(10),c2(5);
cout<<"c1 ="<<c1<<endl;
cout<<"c2 ="<<c2<<endl;
cout<<" ++c1="<<++c1<<endl;
cout<<"c1++ ="<<c1++<<endl;
cout<<" --c1="<<--c1<<endl;
cout<<"c1-- ="<<c1--<<endl;
cout<<"c1+c2="<<c1+c2<<endl;
cout<<"c1-c2="<<c1-c2<<endl;
}