Ну я делаю PE загрузчик на C++ (не мой основной языки) и у меня есть следующие классы:Dependency подход
//Main builder of PE file format
class PEC
{
HMODULE mapTo(char* fullpath);
}
//Build the imports
class ImportBuilder
{
//This func needs PEC::MapTo
bool buildImports(HMODULE module)
}
//Find the exports
class ExportFinder
{
//This func needs PEC::MapTo
void* findExport(int ordinal, HMODULE module);
}
Проблема заключается в PEC класс нуждается класс ImportBuilder для восстановления импорта, но и Для класса ImportBuilder требуется класс PEC для загрузки импорта модулей, которые не основаны внутри текущего процесса. То же самое касается ExportBuilder, ему нужна функция PEC :: MapTo для загрузки некоторых передовых модулей экспорта, которые не основаны.
Это приводит меня к циклической зависимости ... любой метод решения этого вопроса.
Спасибо.
Вы просите объявления о пропуске и идиомы pimpl ?? –