|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
А где вы используете private наследование?30.06.2017, 19:15. Показов 5381. Ответов 30
Метки нет (Все метки)
Насколько я знаю то при приватном наследовании наследник ничего от родительского класса не наследует.
Тогда зачем оно нужно? Ничего же не наследуется. На мой взгляд это может понадобится если нужно по определенным причинам выдать один тип за другой за счёт базового. Но хотелось бы узнать мнение более опытных
0
|
|
| 30.06.2017, 19:15 | |
|
Ответы с готовыми решениями:
30
А где вы используете private наследование?
Наследование private |
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||
| 02.07.2017, 14:49 | ||||
|
в независимости от наличия =deleteвы не знаете, как запилить NoCopyable в рамках с++03? зачем нужно именно приватное наследование, паттерн NoCopyable никак не раскрывает.
0
|
||||
|
Неэпический
|
|
| 02.07.2017, 15:59 | |
|
0
|
|
|
Ушел с форума
|
|||||||
| 02.07.2017, 22:12 | |||||||
|
какую-то реализацию. Это известная, хотя и малораспостраненная идиома C++. Пример:
Foo "не является" NoCopy). Поможет private наследование Foo от NoCopy. Аналогично, если бы внутри protected-секции NoCopy были какие-то методы или члены данных, то при public-наследовании наследники Foo могли бы получить к ним доступ. private inheritance предохраняет от этого (будет ошибка компиляции).
2
|
|||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||
| 03.07.2017, 00:29 | |||
|
или какова вообще может быть здравая причина обрабатывать в функции подобный тип данных? ещё как является. он - является не копируемым классом
0
|
|||
|
Ушел с форума
|
|||
| 03.07.2017, 20:39 | |||
|
"implemented-in-terms-of", - (c) Scott Meyers -, а не "is-a". Т.е. наследуется только реализация, не интерфейс, и сам факт наследования от окружающих скрыт. Что предотвращает некоторые попытки неправильного использования класса.
1
|
|||
|
|
|
| 03.07.2017, 20:53 | |
|
Можно иначе на это посмотреть к примеру в языке нет средств наложить подобные ограничение на класс явно и они достигаются теми средствами которые в нем есть, а именно наследованием.
В других языках может и не быть такой проблемы вообще из-за того что типы ссылочные, а для других подобных ограничений есть свои средства.
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 03.07.2017, 21:21 | ||
|
и подчеркиваю мысль: Foo is NoCopy он является не копируемым и с технической, и с логической, и с идеологической точек зрения. и если кому то за каким то макаром взбредет в голову обработать некопируемые классы, то почему бы и нет? мало ли какие могут быть причуды.
0
|
||
|
495 / 209 / 70
Регистрация: 27.05.2016
Сообщений: 557
|
|
| 05.07.2017, 23:37 | |
|
Мне помогло понять: "Герб Саттер - Решение сложных задач на С++. 87 головоломных примеров с решениями" Задача 3.5. Наследование: потребление и злоупотребление
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 07.07.2017, 06:41 | ||
|
"я не вдупляю, на кой чорт оно нужно - это приватное наследование" зы: не далее чем вчера заюзал приватное наследование. нужно было с альтернативной функциональностью, и что бы не мудрствовать лукаво, переюзал функциональность старых классов, попрятав онные в приватах. получилось собако отнаследованное от кошки. кошкой оно уже не является, и мяукать её уже не заставишь. но четыре лапы и хвост имеются.
0
|
||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|
| 07.07.2017, 08:47 | |
|
0
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 07.07.2017, 09:31 | ||
|
в принципе оно так же не нужно, как и приватное)) разница лишь в том, что приватное ограничивает говнокод краткосрочной перспективой, а протектед позволяет говнокодить в долгосрочной.
0
|
||
| 07.07.2017, 09:31 | |
|
private наследование и виртуальный метод Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Сезонность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы
Всем привет! Хочу поделиться свежим (и довольно. . .
|
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
|
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения:
- добавлена многоязычность
- добавлено снятие скриншотов
- добавлено поддержание бафов хождения по воде (для жреца, дк и шамана)
- и так, по. . .
|