//InvalidQuality.h #ifndef InvalidQuality_H #define InvalidQuality_H // Invalid Quality is a concrete subclass of Quality. It behaves // like any unacceptable quality: any acceptable quality will be found // better in comparison. // #include "Quality.h" class InvalidQuality : public Quality { private: // attributes // define the type static void* _mytype; private: // methods // return the type void* get_type() const { return _mytype; }; // comparison bool _is_better_than(const Quality& quality) const { return false; }; public: bool is_valid() const; }; #endif