#include "Money.h" Money::Money(int value, Currency currency) : value(value), currency(currency) { } Money& Money::operator=(Money money) { value = money.getValue(); currency = money.getCurrency(); return *this; } Money &Money::operator=(Money *money) { value = money->getValue(); currency = money->getCurrency(); return *this; } Money Money::operator+(Money &a) { if(currency == a.currency) { return Money(value + a.value); }else return Money(-1, Currency(CurrencyValue::USD)); } Money Money::operator-(Money &a) { if(currency == a.currency) { return Money(value - a.value); }else return Money(-1, Currency(CurrencyValue::USD)); } const Money Money::operator++(int) { return Money(value++); } const Money Money::operator--(int) { return Money(value--); } int Money::getValue() { return value; } Currency Money::getCurrency() { return currency; }