Re: "Хитрый" проход по контейнеру полиморфных элементов.
От: ArtDenis Россия  
Дата: 18.01.04 16:29
Оценка:
Здравствуйте, Alxndr, Вы писали:

A> ...


Может я не въехал в твою задачу, но почему-бы не добавть load()/save() в game_object.

Те объекты, которые должны быть serializable, пускай их реализуют. Тоже самое касается и draw():
class manager {
public:    
    typedef std::set<game_object*> objects_queue;
    static manager* instance() { return instance_ ? instance_ : instance_ = new manager(); }
    void reg_object(game_object* go)    { objects_.insert(go);    }
    void unreg_object(game_object* go)    { objects_.erase(go);    }
        
        virtual void serialize() {}
        virtual void draw() {}
        
protected:
    manager() { }
    manager(const manager&) { }
    objects_queue objects_;
private:
    static manager* instance_;
};
... << RSDN@Home 1.1.2 stable >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.