// calculator.cpp // 2. implementation file #include "calculator.h" //public: Calculator::Calculator() // constructor { m_result = 0.0; m_memory = 0.0; } Calculator::~Calculator() // destructor { // no pointers in class - nothing to do! } void Calculator::add(float a, float b) { m_result = a + b; memAdd(m_result); } void Calculator::subtract(float a, float b) { m_result = a - b; memAdd(m_result); } void Calculator::multiply(float a, float b) { m_result = a * b; memAdd(m_result); } void Calculator::divide(float a, float b) { if(b != 0.0) { m_result = a / b; memAdd(m_result); } } float Calculator::getResult() // accessor { return m_result; } void Calculator::clearResult() // mutator { m_result = 0.0; } float Calculator::getMemory() // accessor { return m_memory; } void Calculator::clearMemory() // mutator { m_memory = 0.0; } // protected: void Calculator::memAdd(float r) { m_memory = m_memory + r; }