Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[13.59.122.162] |
|
Сообщ.
#1
,
|
|
|
Приветствую. Есть некая сессия которая умеет читать и писать, есть некий логический обработчик который обрабатывает прочитанное, но, обработчик должен так или иначе иметь доступ к сессии дабы отправить результаты своей работы, ровно как и сессия должна иметь экземпляр этого обработчика. Передавать указатель через конструктор в 2020 как то не комильфо, какие еще есть красивые варианты?
|
Сообщ.
#2
,
|
|
|
Ссылка + forward declaration ?
|
Сообщ.
#3
,
|
|
|
2 Wound Так и реализовано сейчас, но мб есть что то более красивое?
|
Сообщ.
#4
,
|
|
|
Ну либо интерфейсы пилить. Тогда ты можешь юзнуть динамический полиморфизм, подкидывая нужные классы.
Добавлено Цитата Painkiller @ 2 Wound Так и реализовано сейчас, но мб есть что то более красивое? В новый стандарт еще пока не завезли вроде что то более красивого. Вот когда модули появятся, тогда возможно можно будет сделать по другому. |
Сообщ.
#5
,
|
|
|
Я в таких случаях начал использовать статический полиморфизм, мне очень понравилось.
|
Сообщ.
#6
,
|
|
|
Цитата Painkiller @ Ну а почему нет-то? Ну, оберни в weak_ptr. Ну заведи connect()/disconnect() в обработчике. Так-то, не вижу необходимости в том, чтобы просто по причине субъективных взглядов заводить аж целый холдер сессии и стучаться к ней через его интерфейс. Передавать указатель через конструктор в 2020 как то не комильфо, какие еще есть красивые варианты? |