The code for the SpreadsheetCell is as follows:
SpreadsheetCell(); // default constructor
virtual ~SpreadsheetCell(); // destructor
virtual void set(const std::string& inString) = 0; // setter for mString
virtual std::string getString() const = 0; // getter for mString
The text indicates that the constructor is implemented just as a placeholder in case initialization needs to happen in the future. Why wasn't the constructor declared as virtual or pure virtual?
The text indicates that "SpreadsheetCell cell;" will not compile, and this is confirmed because I see the red squiggly line under "cell". But, why so, when there is a constructor?