includeusing std::string;
class SpreadsheetCell
{
public:
SpreadsheetCell();
SpreadsheetCell(double initialValue);
explicit SpreadsheetCell(const string& initialValue);
SpreadsheetCell(const SpreadsheetCell& src);
SpreadsheetCell& operator=(const SpreadsheetCell& rhs);
void set(double inValue);
void set(const string& inString);
double getValue() const {mNumAccesses++; return (mValue); }
string getString() const {mNumAccesses++; return (mString); }
static string doubleToString(double inValue);
static double stringToDouble(const string& inString);
friend const SpreadsheetCell operator+(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend const SpreadsheetCell operator-(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend const SpreadsheetCell operator*(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend const SpreadsheetCell operator/(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
SpreadsheetCell& operator+=(const SpreadsheetCell& rhs);
SpreadsheetCell& operator-=(const SpreadsheetCell& rhs);
SpreadsheetCell& operator*=(const SpreadsheetCell& rhs);
SpreadsheetCell& operator/=(const SpreadsheetCell& rhs);
friend bool operator==(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend bool operator<(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend bool operator>(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend bool operator!=(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend bool operator<=(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
friend bool operator>=(const SpreadsheetCell& lhs,
const SpreadsheetCell& rhs);
protected:
double mValue;
string mString;
mutable int mNumAccesses;
};(C) Æliens 20/2/2008
You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author. </div> <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-2780434-1"; urchinTracker(); </script> </body> </html> <hr> <hr> <table cellpadding=10> <tr> <td> <address> Hush Online Technology </address> hush@cs.vu.nl <br>10/19/08 </td><td>
</td>
</tr>
</table>