170 похожих чатов

Насколько хорошей практикой является явная специализация шаблонного класса?

20 ответов

19 просмотров

что имеется ввиду?

Michael-Chambers Автор вопроса
Dmitry Ulyumdzhiev
что имеется ввиду?

Кейс когда очень не хочется весь шаблон хранить в заголовках

На самом деле она достаточно редка.

только для сокрытия реализация шаблона или для реализации специфичных для типа фич, а так на то он и обобщенный код, чтобы быть обобщенным

Michael-Chambers Автор вопроса
Anatoly Shirokov
только для сокрытия реализация шаблона или для реа...

У меня получается сокрытие реализации. Есть иерархия классов диалогов и параллельная ей иерархия классов логики внутри этих диалогов. Таким образом хотел логику сделать аргументом шаблона класса диалога и скрыть реализацию логики от диалога. Какой-то pimpl выходит...

Michael Chambers
У меня получается сокрытие реализации. Есть иерарх...

Ой да не стоит тут так уж архитектуализировать всё, я вот могу точно сказать по опыту: будет только хуже. Запутано , непрозрачно.

Michael-Chambers Автор вопроса
Ilya Zviagin
Ой да не стоит тут так уж архитектуализировать всё...

А как тогда? Если мне нужно расширять и логику и диалог. Взять обычный pimpl?

Michael-Chambers Автор вопроса
Ilya Zviagin
Расширять — это в каком смысле?

По минимуму использовать виртуальные функции в логике, только добавлять новые

Michael Chambers
По минимуму использовать виртуальные функции в лог...

Ну, я тебе ещё могу сказать, что наследование в формах (в UI) — тоже вредно IMHO. Не нужно его использовать. Одно дело , когда ты наследуешь свой диалог от базового диалога фреймворка — это ок. Другое — когда наследуешь диалог выбора файла от диалога выбора. Это — не ок.

Michael-Chambers Автор вопроса
Ilya Zviagin
Ну, я тебе ещё могу сказать, что наследование в фо...

Если совсем так, то условно наследую диалог выбора картинки от диалога выбора файла. Тогда я немного не понимаю если мне нужен функционал диалога родителя + немного нового функционала то почему не наследоваться от него?

Michael-Chambers Автор вопроса
Denis P
для этого есть композиция например

Это планируется реализовать в будущем, сейчас слишком разрозненная структура и притащить его займет много времени

Michael Chambers
Это планируется реализовать в будущем, сейчас слиш...

Потом это займёт ещё больше времени. Если есть возможность сразу сделать нормально, имхо, стоит ей воспользоваться. Архитектурные ошибки стоят дорого.

Michael-Chambers Автор вопроса
Blue Talpa
Потом это займёт ещё больше времени. Если есть воз...

Тут проект одна большая архитектурная ошибка...

Michael Chambers
Если совсем так, то условно наследую диалог выбора...

Ну, это сложно. В основном потому, что общие свойства диалогов — они такие, кажущиеся только....

Michael-Chambers Автор вопроса
Ilya Zviagin
Ну, это сложно. В основном потому, что общие свой...

Эти диалоги - это отображение структур, которые содержат общих членов и своих поэтому предположил что будет много общего. Наследование диалогов отсюда и пришло. Соответственно общие члены всегда отображаются в общие свойства. Поправьте, если ошибаюсь.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта