Inicialização de variável estática em uma biblioteca

Estou trabalhando em uma fábrica que terá tipos adicionados a eles, no entanto, se a classe não for explicitamente instanciada no .exe que é exercido (tempo de compilação), o tipo não será adicionado à fábrica. Isso se deve ao fato de que a chamada estática é como não está sendo feita. Alguém tem alguma sugestão sobre como corrigir isso? Abaixo estão cinco arquivos muito pequenos que estou colocando em uma lib, então um .exe chamará essa lib. Se houver alguma sugestão sobre como fazer isso funcionar, ou talvez um melhor padrão de design, entre em contato. Aqui está basicamente o que estou procurando

1) Uma fábrica que pode receber tipos

2) Registro automático para entrar no arquivo .cpp da classe, todo e qualquer código de registro deve ir na classe .cpp (por exemplo, RandomClass.cpp) e nenhum outro arquivo.

BaseClass.h:http://codepad.org/zGRZvIZf

RandomClass.h:http://codepad.org/rqIZ1atp

RandomClass.cpp:http://codepad.org/WqnQDWQd

TemplateFactory.h:http://codepad.org/94YfusgC

TemplateFactory.cpp:http://codepad.org/Hc2tSfzZ

questionAnswers(3)

yourAnswerToTheQuestion