Size: a a a

IT KPI C/C++ ХВ (не UB)

2020 July 16

k

kvark in IT KPI C/C++ ХВ (не UB)
я сделал тайпдеф, чтобы юзер просто RESOLVE_MANAGER(ISomeListener) писал
источник

A

Andrew in IT KPI C/C++ ХВ (не UB)
kvark
я сделал тайпдеф, чтобы юзер просто RESOLVE_MANAGER(ISomeListener) писал
Прочитал как резолв ангер
источник

k

kvark in IT KPI C/C++ ХВ (не UB)
Andrew
Прочитал как резолв ангер
кххх)
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
kvark
Делаю типа менеджер лисенеров, который надо наследовать. По задумке, когда наследуют несколько менеджеров с разными интерфейсами, то функции доступа должны перегружатся. Но перегрузки не просиходит( поч?
https://pastebin.com/sEpNUQhS
както все сложно
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
зачем все это наследование?
и в чем вообще идея?
источник

k

kvark in IT KPI C/C++ ХВ (не UB)
Ruslan Neshta
зачем все это наследование?
и в чем вообще идея?
в том, чтобы ты просто наследовал класс и больше ничего не делал для создания обработчика лисенеров. чтобы вручную не создавать методы регистр\анрегистр, и не создавать поле для хранения лисенера. а при каждом нотифае не писать целый цикл, а просто вызвать один метод
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
О, а как создать абстрактный класс, но чтобы была реализация методов в нём?
источник

A

András in IT KPI C/C++ ХВ (не UB)
Yevhen Salatskiy
О, а как создать абстрактный класс, но чтобы была реализация методов в нём?
Всіх методів? Ніяк
источник

A

András in IT KPI C/C++ ХВ (не UB)
Якщо тільки деяких, то самим звичайним чином
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Ммм, у меня класс с одним полем и методом, и я не хочу, чтобы можно было инстанс его собрать, но чтобы реализация метода там осталась
источник

A

András in IT KPI C/C++ ХВ (не UB)
Це костиль, але створи абстрактний метод, який ніколи не викликай
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
kvark
в том, чтобы ты просто наследовал класс и больше ничего не делал для создания обработчика лисенеров. чтобы вручную не создавать методы регистр\анрегистр, и не создавать поле для хранения лисенера. а при каждом нотифае не писать целый цикл, а просто вызвать один метод
так просто делаешь клас что хранит мапу колбеков
источник

A

András in IT KPI C/C++ ХВ (не UB)
András
Це костиль, але створи абстрактний метод, який ніколи не викликай
І хай це буде деструктор
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
и он их обходит при ивенте
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
всем его раздает
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
а у тех кому надо сообщения получать просто один кол - подписка на ивент
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
ну ладно еще один
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
отписка))
источник

k

kvark in IT KPI C/C++ ХВ (не UB)
Ruslan Neshta
так просто делаешь клас что хранит мапу колбеков
колбэки, это просто принципиально другой подход, который решает ту же задачу
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
тогда ладно
источник