Имеем синглтон фабрики объектов и кучу однотипных объектов. Эти объекты регистрируются в фабрике так:
namespace
{
classA* createClass() { return new classB() };
const bool registered = factory::instance().registerClass( "B", createClass );
}
P.S. если все объекты скомпилировать в динамическую библиотеку и самому программно ее загружать, то внутри библиотеки создается свой экземпляр фабрики и уже в ней происходит регистрация объектов. Соответственно из основной программы я их достать не могу.