Я хочу иметь интерфейс хранилища (абстрактный класс) и набор реализаций хранилища (SQLite, MySQL, Memcached ..) для хранения объектов известного класса и получения подмножеств из хранилища.
Для меня понятный интерфейс будет выглядеть так:
class Storable{int id; blah; blah; blah; string type;};
class Storage{
virtual Storage::iterator get_subset_of_type(string type) = 0;
virtual Storage::iterator end)_ = 0;
virtual void add_storable(Storable storable) = 0;
};
А затем создать реализации хранилища, которые соответствуют интерфейсу. Теперь моя проблема заключается в следующем:
Есть подсказки?