typedef unsigned short USHORT;
#include<iostream>
using namespace std;
class counter
{
public:
counter();
counter(USHORT initialValue);
~counter(){ }
USHORT getValue() const{return Value;}
void setValue(USHORT x){Value=x;}
counter operator+(const counter &);
private:
USHORT Value;
};
counter::counter(USHORT initialValue):
Value(initialValue)
{
}
counter::counter():
Value(0)
{
}
counter counter::operator+(const counter & rhs)
{
return counter(Value+rhs.getValue());
}
int main()
{
counter varone(2),varTwo(4),varThree;
varThree=varone+varTwo;
cout<<"varone:"<<varone.getValue()<<endl;
cout<<"varTwo:"<<varTwo.getValue()<<endl;
cout<<"varThree:"<<varThree.getValue()<<endl;
return 0;
}