Size: a a a

2020 August 16

🦊

🦊fox.cpp in C++ Together 2.0
Вот я и говорю, что не надо
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
Ты мне так и не доказал, что оно тебе вообще надо
Дело не в этом, тут баланс между производительностью и удобством
источник

🦊

🦊fox.cpp in C++ Together 2.0
Roy Mustang
Дело не в этом, тут баланс между производительностью и удобством
Выбирай удобство, /тред
источник

RM

Roy Mustang in C++ Together 2.0
Тебе не нужно хранить указатели на другие плагины внутри того же модуля - это раз, тебе не нужно хранить указатели других модулей внутри плагинов - это два
источник

RM

Roy Mustang in C++ Together 2.0
Только чистый твой интерфейс
источник

RM

Roy Mustang in C++ Together 2.0
Как ты говоришь если тянуть через App, то вопрос не в производительности, а в читабельности кода, ты предлагаешь делать постоянно так this->GetApp()->GetModule<Type>( )
источник

RM

Roy Mustang in C++ Together 2.0
Это в том случае, если я в базовый класс плагинов добавлю метод GetApp
источник

RM

Roy Mustang in C++ Together 2.0
Он там не планируется, потому что доступ по иерархий
источник

RM

Roy Mustang in C++ Together 2.0
Не более двух вызовов последовательно, максимум 3
источник

RM

Roy Mustang in C++ Together 2.0
Если это часто повторяющийся код, то не более 1 желательно
источник

🦊

🦊fox.cpp in C++ Together 2.0
Так я тебе предложил один раз скопировать в сам класс, а ты уперся.
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
Так я тебе предложил один раз скопировать в сам класс, а ты уперся.
Не уперся, я это и предлагал все это время
источник

🦊

🦊fox.cpp in C++ Together 2.0
Пизда недопонимание
источник

RM

Roy Mustang in C++ Together 2.0
Создать класс удобный и поместить его объект внутрь класса модуля каждого
источник

RM

Roy Mustang in C++ Together 2.0
И пусть он раздает указатели в рантайме
источник

RM

Roy Mustang in C++ Together 2.0
И не нужно будет ничего нигде хранить, только фабрику внутри класса модуля
источник

🦊

🦊fox.cpp in C++ Together 2.0
Ещё раз, ты зависимости на каком уровне определяешь?
источник

🦊

🦊fox.cpp in C++ Together 2.0
По-моему сейчас на никаком
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
Ещё раз, ты зависимости на каком уровне определяешь?
В момент вызова виртуальных функций, первая вызываемая функция AppInit как раз для инициализаций зависимостей
источник

🦊

🦊fox.cpp in C++ Together 2.0
Где в твоей простыне я могу увидеть, какие плагины из каких модулей твоей дллкоц используются
источник