Быстрый поиск в Google по шаблонам проектирования объектов доступа к данным вернет не менее 10 результатов на первой странице, которые будут полезны. Наиболее распространенным из них является абстрактный дизайн интерфейса, как уже показывал Джефф Фостер. Единственное, что вы можете добавить к этому - это фабрика объектов доступа к данным для создания ваших объектов.
Большинство примеров, которые я мог найти с приличным кодом, относятся к Java, это общий шаблон проектирования в Java, но они все еще очень актуальны для C ++, и вы можете использовать их довольно легко.
Это хорошая ссылка , она хорошо описывает абстрактную фабрику.