|
25 / 19 / 9
Регистрация: 05.04.2019
Сообщений: 338
|
||||||||||||||||
Зачем нужны виртуальные функции если есть перегрузка?14.09.2020, 20:52. Показов 6716. Ответов 53
Есть следующий код:
В чём тогда преимущество виртуальных функций перед следующим кодом:
0
|
||||||||||||||||
| 14.09.2020, 20:52 | |
|
Ответы с готовыми решениями:
53
Зачем нужны массивы, если есть обычные переменные? Зачем нужны обычные массивы, если есть динамические? Зачем нужны виртуальные методы? |
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 16.09.2020, 12:05 | ||
|
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
|
| 16.09.2020, 12:08 | |
|
вобщем над зависимостями - ещё подумать...
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 16.09.2020, 12:09 | |
|
0
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
|
| 16.09.2020, 12:10 | |
|
но конкретно по примеру - это просто его рацион - переобозвать класс Cachalot на CashalotMenu
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 16.09.2020, 12:11 | |
|
Над ней всегда надо думать. И над зависимостями тоже. Ошибки проектирования - самые дорогие ошибки.
1
|
|
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
|||
| 16.09.2020, 12:12 | |||
![]() Добавлено через 29 секунд
0
|
|||
| 16.09.2020, 12:22 | |||||||
|
Не по теме:
0
|
|||||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
|||
| 16.09.2020, 12:47 | |||
|
Добавлено через 4 минуты попробую это "делать с умом": 1. располагать в куче не всё скопом (не всё MenuForCachalot, а только Food1 или Food2, когда что надо), что надо, например, на завтрак и т.д.! 2. И Удалять вовремя - полагаю "с умом" - именно это имеет ввиду... - спасибо!
0
|
|||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||
| 16.09.2020, 12:52 | |||
|
В куче же ты можешь это делать в любой последовательности.
1
|
|||
|
Комп_Оратор)
|
||
| 16.09.2020, 13:08 | ||
|
Что касается ума, то иногда трудно что-то сказать. Например создавая вектор смартпойнтеров память в куче выделяетмя и смартпойнтерами и вектором. Но важно не это. Жаль видеть гибель темы с хорошим - спасибо ТС названием. Можно бы даже попросить модераторов чуть подправить концовку.
0
|
||
| 16.09.2020, 13:21 | ||
|
Не по теме:
пример становится всё более реальным :rtfm: нежели абстрактным... я тоже - за то, чтобы не создавать лишних классов...
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
|||||||
| 17.09.2020, 18:40 | |||||||
|
Кликните здесь для просмотра всего текста
но const, наверно, всё-таки убрать?.. всё равно непонятно, зачем ещё и шаблон, если в каждом классе прописывать свой std::ostream& надо?.. (вообще, конечно, этот std::ostream& чаще встречается, как friend, но friend'ы не наследуются)... т.е. шаблон делают, чтобы для каждого не делать своего friend'а?.. Добавлено через 3 минуты неужели есть какой-то тайный смысл в замене virtual на использование templates?.. бывает ли это резонно? и в каких случаях?.. как-то сильно задумалась над вашей мыслью...
0
|
|||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||
| 17.09.2020, 18:45 | |||||
|
Добавлено через 1 минуту void WriteLog(T &&obj) Добавлено через 47 секунд Добавлено через 1 минуту Добавлено через 1 минуту
1
|
|||||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
||||||||
| 17.09.2020, 19:24 | ||||||||
вот это уже радует в шаблонах! спасибо!Добавлено через 23 минуты но с friend'ами как-то так, наверно, - у каждого свой: Кликните здесь для просмотра всего текста
0
|
||||||||
|
Комп_Оратор)
|
|||||||
| 17.09.2020, 19:25 | |||||||
0
|
|||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 17.09.2020, 19:27 | ||
|
0
|
||
|
Комп_Оратор)
|
||||||
| 17.09.2020, 19:33 | ||||||
|
Или даже так
0
|
||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 17.09.2020, 19:34 | ||
|
0
|
||
|
Комп_Оратор)
|
||
| 17.09.2020, 19:38 | ||
|
Наследование + полиморфизм, позволяют строить иерархические по данным и логике, RAII управляемые, легко выражаемые структуры. ![]() Виртуально-феерические. ![]() Но если решается шаблонами, то от виртуальности нужно бежать, обычно.
0
|
||
|
264 / 153 / 33
Регистрация: 29.06.2019
Сообщений: 1,554
|
|||||||
| 17.09.2020, 19:58 | |||||||
|
Кликните здесь для просмотра всего текста
вообще, я, конечно, не экстрасенс... но над тем, что будет наследоваться, что нет и как - ещё поработать надо... думаю, вы ведёте к 1-му вопросу ТСа - и ответ будет такой же, как в начале ветки -- просто синтаксис stream'а немного завёрнутый ... завтра посмотрю _ уже, наверно, слепая...
0
|
|||||||
| 17.09.2020, 19:58 | |
|
зачем нужны анонимус-функции? если есть {} и let
Зачем нужны наборы в Evernote, если есть Блокноты? А зачем нужны веб программисты, если есть wordpress? Зачем нужны rvalue ссылки, если есть универсальные ссылки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
BitTorrent (версия 7.11 English) и Меню Настройки
russiannick 15.11.2026
Пункты, отвечающие за отключение обновлений в BitTorrent версии 7. 11 (английской)
Options
Preferences
General
Language
|
Транслитерация текста с кириллицы на латиницу (вариант №4)
Maks 15.11.2026
Что-то я перемудрил с предыдущими версиями, в этот раз сделал всё проще, обратившись к функции "СтрокаЛатиницей" из типового общего модуля "СтроковыеФункцииКлиент".
В данной функции нет апострофов,. . .
|
BitTorrent (версия 4.3.9) и Меню Настройки
russiannick 15.11.2026
В меню Настройки можно отключить автоматическое обновление программы.
Карта этого меню приложена ниже.
Нужный пункт выделен красным.
Сервис
Настройки
Поведение
|
Транслитерация текста с кириллицы на латиницу (вариант №3)
Maks 15.11.2026
Обновленная версия предыдущей обработки.
Изменения коснулись букв: Ъ, Ы, Ь, Э, отображения которых зависят от положения реквизита "Транслитерация имён".
Изменено отображение буквы Й.
Добавлена. . .
|
|
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки.
Добавлено:
- Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|