Модификаторы доступа при наследовании. private public protected Спецификаторы доступа. ООП. C++ #99
HTML-код
- Опубликовано: 21 окт 2017
- Понравилось видео или оказалось полезным? Подпишись!
Поддержка канала
/ simplecode
Рекомендую посмотреть
Наследование в ООП пример. Что такое наследование. Для чего нужно наследование классов. ООП. C++ #98
goo.gl/GmLeYx
Модификаторы доступа при наследовании. private public protected Спецификаторы доступа классов. ООП. C++ Для начинающих #99
Уроки по программированию
Наша группа ВК smplcode
Подписывайтесь на канал / @simplecodeit
*Друзья, если вы решили изучать программирование и подписались на канал - рекомендую вам нажать колокольчик чтобы никогда не пропускать новые уроки!*
Сергей не могли бы вы записать видео по работе с hex- редактором и cmake для С++?
поставил!
Сколько еще уроков надо просмотреть, сколько кода написать. Но мы справимся.
Дякую))В тебе найкращі уроки по с++!!!
Шикарно Изложенный урок Спасибо !
Классно, стильно, молодёжно, как всегда понятно и не сложно (Крутой смайлик)
Очередное спасибо за урок!
Спасибо за Ваши уроки, Сергей)
Спасибо, качественно, быстро!!!
Спасибо огромное, успехов в развитии. Очень познавательно и доходчиво
Спасибо большое за бесценный труд!
как и обещал, с вас видос, с меня лайк и репост.
Всё объяснено понятно,спасибо !
Спасибо за контент!
СПАСИБО ЗА УРОКИ!
Спасибо, очень важный урок!
Мое почтение , програмирование это круто .
супер!!!!Продолжай снимать
Сергей, спасибо огромное!
спасибо вам!!!! Вы лучший!
Спасибо за урок!
#модификаторыдоступа #ООП #SimpleCode #урокипрограммирования
Я так понимаю, если в родителе есть поля private, то к ним нельзя обратиться нигде, кроме как в самом классе-родителе?
Если так, то я бы немного изменил таблицу и в колонке private везде бы поставил значение "недоступно", просто немного неясно, почему в случае private наследования доступ к public полям исходного класса внутри наследника есть, а к private полям нет, хотя согласно таблице спецификатор у них одинаковый.
Так или иначе есть возможность всегда написать в класе friend, так что даже приват не приватный
Через геттеры, сеттеры, если это, конечно, требуется
согласен, тоже это заметил. Несостыковочка получается
@@distraw1753 В с++ и без friend хватает способов получить доступ к привату. Смысл привата в том, чтобы ничайно туда никто чужой залезть не смог.
Спасибо
Вы лучший!
Спасибо!
Спасибо за урок
Спасибо!!!!!!
ВАААУ ТЫ ТАКОЙ КРУТОООй!!!
another aw'e'some video, thank you!
Спасибо. Вопросы из предыдущего урока закрыл.
Спс за урок))
прекрасно изложено, лаконично. единственное неудобство состоит в том, что код не уместился в экран и постоянные прокрутки вверх и вниз отвлекают.
Для этого есть кнопка паузы - притормозить/осмыслить. Иначе, для "уместить" прийдется уменьшить шрифт - а это не есть хорошо.
Very good!)
Автор, проверил на компиляторе. Базовый класс на уровне методов видит протектед поля также успешно как и приватные. + к тому же класс наследник протектед поля в базовом классе видит у себя как приватные, и к ним нельзя обратиться через точку. На 6:35 немного амбивалентно звучит ))
07:47 обращение к полям базового класса через модификатор наследования (таблица)
спасибо
Tankhs you!
Super!!!
Супер111111111!"
отлично
Но почему когда поле например с public становится private при наследовании с модификатор private, то мы имеем к нему доступ, а когда оно в родительском классе сразу private, то не имеем?
Знаю год прошел, но все равно скажу, если он изначально не был private то мы сможем его унаследовать, даже если он в итоге стал private, а если он изначально был private то мы к нему даже "прикоснуться" не сможем, как-то так
@@sgeinok5950 спасибо, стало яснее
super
Дякую тобі
привет из 2023, спасибо большое за уроки!
👍
Если вам что-то непонятно, то обязательно нужно попробовать самому поиграться и понять принцип работы.
Очень интересная тема наследования
хорошие уроки. У меня вопрос: после окончания курса, можете сделать уроки по созданию 2d игр?
Почему он должен уметь делать игры? А ну да, ТЫЖПРОГРАММИСТ
@@iryandriver ну если говорить о скриптах и т. п. То, я думаю, он весьма способен на это, но без визуала это будет консольная игра
Там просто достаточно посмотреть пару видосов, потом уже понятно как любую 2д игру написать, методом проб и ошибок, но научиться на базовом уровне их кодить покатит.
256 лайков 0)0))))
Видимо, сейчас 4096
произошло переполнение
коммент уважения
лайк
👍👍👍👍👏
Здрасте когда вы писали cout
ctrl+k+d
@@SimpleCodeIT Спасибо, к 100 уроку узнал наконец))
Знаю связки ctrl+k+x для шаблонов и ещё ctrl+k+c и ctrl+k+u - для комментирования.
Активно юзаю.
Судя по таблице, доступ возможен:
если protected:, то "indirect",
если public:, то "direct",
если private:, то "фиг вам"
Но, я проверил, почему же тогда у меня, при наследовании с модификатором "private":
- да, действительно, мы не имеем доступа к полям класса "A" через объект класса "B",
- но зато через методы класса "В" (PrintMsg) т.е. изнутри, т.е. "indirect" - все работает норм, b.PrintMsg() - все печатает, все чики?
будет ли тема:файловые потоки в Си++?
будет
Подскажите, почему у меня наследуемый класс наследует пустой конструктор (или сам создает), а конструктор с принимаемыми параметрами не наследует?
Конструкторы не наследуются
Салам влейкум
Сергей подскажите,
private члены не наследуются, а в табличке написано, что всегда наследуются, как private. Где подвох?
Тут речь уже о наследовании в 3 класс, если во второй сделать наследование private, public и protected все равно будут доступны, а вот когда мы попытаемся второй класс наследовать в третий, то все модификаторы из первого класса для третьего уже будут private т. е. Недоступны. Это тоже самое, если методы public и protected не наследовать из первого класса, а сразу написать во втором классе, только с доступом private, то есть в третьем классе при наследовании они доступны не будут, надеюсь понятно объяснил
Наследуются всегда все члены базового класса (и функции, и данные). А модификаторы доступа влияют только на доступность. Приватные члены будут унаследованы, но не будут доступны в классе наследника.
up
Фап
Отличные уроки! Но более нужен аналогичный и более полный С#. Только здесь возможно нормально ознакомисться с си-программированием.
Так и не понял, в чём разница в наследовании типа private и protected дочернего класса. C private областью родительского класса всё понятно, он в обоих случаях недоступен ни в дочернем классе, ни извне через объект дочернего класса. Но в чём разница в public и protected области родительского класса? Что при наследовании типа private в дочернем классе можно использовать эти области родительского класса, но извне, через объект дочернего класса, нельзя. Что при наследовании типа protected в дочернем классе можно использовать эти области родительского класса, но извне, через объект дочернего класса, нельзя.
Protected доступен только в самом классе, но не доступен в объекте.
@@user-or1hy4xz8u, это private доступен только в классе, а protected и в экземпляре. 😉
+++++
Кто эти двое, поставившие диз?😲
9:43 Ты украинец? P.s. Так само
Украина и Россия - без олигархов сила!
Спасибо за урок!
Спасибо!!!
Спасибо!
Спасибо
Super!
спасибо
Спасибо!!!
Спасибо!
Спасибо!!!
Спасибо
спасибо