1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
||||||
1 | ||||||
Protected в классах03.06.2015, 09:57. Показов 2707. Ответов 32
Метки нет (Все метки)
Но получил ошибку error: 'int TPoint::x' is protected| Чего-то я не допонял. Нужно разъяснение и пример как такое делают.
0
|
03.06.2015, 09:57 | |
Ответы с готовыми решениями:
32
protected или не protected : ) Определить, какие из этих имен встречаются во всех классах, какие есть хотя бы в двух классах, и какие - только в одном классе PROTECTED Protected Struct |
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
03.06.2015, 12:07 [ТС] | 21 |
Tulosba, И смысл был в том, что в скобочки записал и получил результат. Приватные данные тут не подходят.
Или пример давай рабочий без геттеров, сеттеров, а чисто на конструкторах с приват. без протектед и не в паблик. Добавлено через 26 секунд к этому
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
03.06.2015, 12:24 | 22 |
Есть более удачный стиль именования: имя любого пользовательского типа задается с большой буквы (без лишних T). Рекомендую для ознакомления google-code-style например.
Вот уже по этому наследование не следует делать публичным. Публичное наследование подразумевает возможность замены экземпляра базового класса экземпляром производного. См. Принцип подстановки Лисков. Правильнее использовать приватное наследование, а ещё лучше агрегирование (включение в качестве члена) в данной ситуации. Добавлено через 2 минуты Не очень понял. Поясни, плиз, этот момент.
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
03.06.2015, 12:32 [ТС] | 23 |
ОК. насчет именования большого смысла спорить нет. Сам спор бессмысленен. Если бы я работал, я бы безусловно исполнял требования именования, которые предъявляет работодатель(заказчик). В учебных целях все что понятно и не затрудняет чтения вполне себе подходит.
_______________ С наследованием как private в этом примере не принципиально, я согласен, что само наследование надо private, но существующие в примере внутри класса неконстантные данные как private не сделать. Хотелось бы, да не получится. (если только конструкторы) Добавлено через 1 минуту Ваш вариант это условие выполняет. ___________ Но не решает поставленную мною мне задачу решить это только на конструкторах. Вот и все.
0
|
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
|
03.06.2015, 12:39 | 24 |
ну просто ряд людей уже увидели твоё TName и их перекосило, потому что на работе ни у кого нету такого у них. Так как никто не поддержал такое именнование - возможно на форуме нету ниодного работающего на фирме с таким неймингов типов?)
0
|
daslex
|
03.06.2015, 12:41
[ТС]
#25
|
Не по теме: На форуме есть. В ветке cpp-beginners может и нету.
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||||||
03.06.2015, 12:43 | 26 | |||||
Без использования функций не являющихся конструкторами? Так это можно исправить. Убираем геттеры, и добавляем копи-конструктор:
Кликните здесь для просмотра всего текста
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
03.06.2015, 12:51 [ТС] | 27 |
Не по теме: Паскаль-Delphi-Cpp Нечего удивляться такому именованию, с Паскаля ноги растут :scratch: Добавлено через 5 минут Tulosba, А убедиться-то как, что в X и Y те X и Y без протектед, если метод Show только у Circle Добавлено через 2 минуты без отладчиков'
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||||||
03.06.2015, 12:55 | 28 | |||||
Значит он должен делегировать вызов в Point.Show() для "точечной" составляющей круга.
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
||||||
03.06.2015, 13:00 [ТС] | 29 | |||||
Не понял
Вот Код, который должен показать Х,Y и радиус
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|
03.06.2015, 13:05 | 30 |
Тип Point должен содержать свой метод Show(). И этот метод можно вызвать из Circle::Show() как я показал ранее. Если метода доступа к приватным данным Point (x,y) не будет, то и легального способа отобразить эти данные, конечно же, тоже не будет. Я думаю, это очевидно.
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
03.06.2015, 13:09 [ТС] | 31 |
оговорено было.
Добавлено через 1 минуту он для того и нужен этот protected.
0
|
Tulosba
|
03.06.2015, 14:03
#32
|
0
|
daslex
|
03.06.2015, 14:13
[ТС]
Protected в классах
#33
|
Не по теме: Не похоже, что мне удастся поработать программистом. Так что боятся нечего. :friends:
0
|
03.06.2015, 14:13 | |
Protected DVD Доступ внука к Protected protected и его назначение Доступ к protected полям Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |