Size: a a a

2020 August 16

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
this.getApp.getModule.getPlugin<socket>()
Последнее требует хеш мапу
источник

RM

Roy Mustang in C++ Together 2.0
Вот как раз над этим я голову и ломаю
источник

🦊

🦊fox.cpp in C++ Together 2.0
🦊fox.cpp
net::socket()
Здесь вообще ничего от тебя не требуют
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
this.getApp.getModule.getPlugin<socket>()
Вопрос как раз в том, как сделать так чтоб я получил этот указатель один раз, а затем мог делиться им со своими плагинами
источник

p

pepeground_bot in C++ Together 2.0
в чём ошибка в программе выше была? как сделать чтоб!
источник

CC

Cool Cooler in C++ Together 2.0
Roy Mustang
Вопрос как раз в том, как сделать так чтоб я получил этот указатель один раз, а затем мог делиться им со своими плагинами
Можно сделать #define, думаю
источник

🦊

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

🦊

🦊fox.cpp in C++ Together 2.0
net::socket::get()
источник

🦊

🦊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
🦊fox.cpp
Хватит индирекцию придумывать на ровном месте
Проблема в том, что создавая публичные методы в своем классе, ты создаешь геморрой в указателях на тебя же в других классах
источник

RM

Roy Mustang in C++ Together 2.0
Потому что ты наращиваешь интерфейс свой функциями, которые другие классы не будут юзать, а юзают только твои плагины
источник

🦊

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

🦊

🦊fox.cpp in C++ Together 2.0
Просто не давая доступ за пределами dll
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
Просто не давая доступ за пределами dll
Каким образом? Если методы публичные
источник

🦊

🦊fox.cpp in C++ Together 2.0
Roy Mustang
Каким образом? Если методы публичные
-fvisibility=hidden (дефолт на винде)
источник

RM

Roy Mustang in C++ Together 2.0
🦊fox.cpp
-fvisibility=hidden (дефолт на винде)
Это ты скрываешь точку входа в dll, разве нет? Символ Main
источник

🦊

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