Stuff
public cpp v1 · immutableclass widget{public: Widget(); virtual ~Widget(); virtual void draw() { //some drawing code for (int i = 0; i < widgets.size(); i++) widgets[i]->draw(); } virtual void update() { //some drawing code for (int i = 0; i < widgets.size(); i++) widgets[i]->update(); } virtual void add(Widget *widget) { widget->parent = this; widgets.push_back(widget); } private: std::vector<widget *> widgets; Widget *widget;};