|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
А где вы используете private наследование?30.06.2017, 19:15. Показов 5408. Ответов 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 наследование и виртуальный метод Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного.
1. Почему показания термометра заряжены целью?
Цель заложена в самом. . .
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
По ссылке 403. Не очень информативно такую ссылку постить.
Запись от Usaga размещена Сегодня в 06:46 . . .
|
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
|
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
|
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0)
Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона
Уважаемые коллеги!
В продолжение. . .
|