Дано: язык C++, программа и модулей main.cpp, m1.cpp, m2.cpp, m3.cpp... Требуется: изменением одного единственного конфигурационного файла собирать программу с разным набором модулей из m1...mN. Поддрежка работы указанных модулей должна быть полной и не зависимой от самих модулей.
Кто чего умного посоветует? Книги там какие или примеры как сделать...
Я пока придумал только так: каждый модуль определяет некую функцию init_module(), некий препроцессор создаёт массив из указателей на эти функции, который просматривается в main.cpp для поиска нужного модуля. Подход можно развивать и детализировать.