1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#ifndef MARKED_CLASS #define MARKED_CLASS template <typename BASE> class marked_class : public BASE { public: void set_mark(int mark) { this->mark = mark; } int get_mark() { return mark; } private: int mark = -1; }; #endif // MARKED_CLASS