#include "Property.h" BEGIN_ESTATE_NAMESPACE // Initializing the static data member int Property::s_count = 0; int Property::getCount() { return s_count; } Property::Property() : _id(0), _price(0), _lot_size(0), _waterfront(false), _test(0) { cout << toString() << " constructed with 1\n"; } Property::Property(int price, int lot_size, bool water) : _id(s_count++), _price(price), _lot_size(lot_size), _waterfront(water), _test(1) { cout << toString() << " constructed with 2\n"; } Property::~Property() { cout << toString() << " destructed\n"; } void Property::adjustPrice(int new_price) { _price = new_price; } void Property::adjustPrice(float new_price) { _price = (int)new_price; } string Property::toString() { stringstream s; s << "Property={" << "id=" << _id << ", price=" << this->_price // Illustrating use of "this" << ", lot_size=" << _lot_size << ", water_access=" << _waterfront << "}"; return s.str(); } END_ESTATE_NAMESPACE