Форум программистов, компьютерный форум CyberForum.ru

Зачем нужен спецификатор private? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Borkot
 Аватар для Borkot
4 / 4 / 0
Регистрация: 05.05.2012
Сообщений: 182
Записей в блоге: 1
31.08.2012, 21:31     Зачем нужен спецификатор private? #1
Зачем нужен спецификатор private?Если по умолчанию все члены класса являются частными?
C++
1
2
3
4
5
6
7
8
9
Class queue {
 int q[100];
 int sloc, rloc;
 public:
 void init ();
 void qput(int i);
 int qget();
private: ...
 };
Данные q,sloc,rloc, ини же закрытые по умолчанию?Объясните пожайлуста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.08.2012, 21:31     Зачем нужен спецификатор private?
Посмотрите здесь:

Зачем нужен inline C++
Зачем нужен конструктор? C++
C++ зачем нужен тип private если есть protected??? одного не достаточно? ведь свойства те же
Зачем нужен static C++
C++ зачем нужен параметр
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
31.08.2012, 21:35     Зачем нужен спецификатор private? #2
Borkot,

C++
1
2
3
4
5
6
7
8
9
Class queue {
 int q[100];
 public:
 void init ();
private:
 int gg;
protected:
double fff;
 };
для удобства.
Петррр
 Аватар для Петррр
5915 / 3352 / 333
Регистрация: 28.10.2010
Сообщений: 5,926
31.08.2012, 21:37     Зачем нужен спецификатор private? #3
По умолчанию поля структур public.
Intel~lect
 Аватар для Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
31.08.2012, 21:37     Зачем нужен спецификатор private? #4
Некоторые сначала public пишут а уже потом private:
C++
1
2
3
4
5
6
7
class A
{
public:
   ...
private:
   ...
};
Invader_Zim
Twilight Parasite
 Аватар для Invader_Zim
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 907
31.08.2012, 21:38     Зачем нужен спецификатор private? #5
Петррр, Хорошо было раньше, когда были только структуры...
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
31.08.2012, 21:42     Зачем нужен спецификатор private? #6
Зачем нужен спецификатор prived?
Спасибо. Просто спасибо.

Для удобства нужен спецификатор private. В конкретно данном примере - он вообще ни о чем.
Borkot
 Аватар для Borkot
4 / 4 / 0
Регистрация: 05.05.2012
Сообщений: 182
Записей в блоге: 1
31.08.2012, 23:01  [ТС]     Зачем нужен спецификатор private? #7
А в чем заключается удобство?Если можно указать данные, сразу за открывающийся фигурной скобкой и не использовать private вообще.В чем удобство?
PSIAlt
 Аватар для PSIAlt
86 / 86 / 8
Регистрация: 19.06.2012
Сообщений: 245
31.08.2012, 23:04     Зачем нужен спецификатор private? #8
Цитата Сообщение от Borkot Посмотреть сообщение
А в чем заключается удобство?Если можно указать данные, сразу за открывающийся фигурной скобкой и не использовать private вообще.В чем удобство?
В чем удобство автомобиля если можно взять и пойти пешком?
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.08.2012, 23:12     Зачем нужен спецификатор private? #9
Цитата Сообщение от Borkot Посмотреть сообщение
А в чем заключается удобство?
Удобство в том, что можно выбрать, что писать в начале, что потом. Кому-то нравится (и привык) писать в начале public члены, кому-то наоборот.
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
31.08.2012, 23:19     Зачем нужен спецификатор private? #10

Не по теме:

prived, preved или превед?



Добавлено через 5 минут
Цитата Сообщение от Borkot Посмотреть сообщение
А в чем заключается удобство?Если можно указать данные, сразу за открывающийся фигурной скобкой и не использовать private вообще.В чем удобство?
просто придумана концепция такая, что покупатель в супермаркте может только ходить, брать с полок продукты, класть их в тележку, оплачивать на кассе и отчаливать. если ты когда-нибудь там был, то ты видел, что есть в зале какие-то входы-выходы с надписью personal only. и что за этими дверями (а там - много чего! гораздо больше происходит, чем в зале!), покупатель знать не обязан и вмешиваться туда не в состоянии.
конечно, ты можешь заорать, чтобы тебе прислали "самого-самого-главного", ты с ним только дело иметь будешь, и тебе, конечно, позовут, но это - для тебя. а для нас, простых смертных, все это - под грифом private. да так и спокойнее (пока наша работа - не раскладывать товары по полкам в супермаркте).
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.08.2012, 23:23     Зачем нужен спецификатор private? #11
В литературе часто специально пишут private, чтобы "...подчеркнуть важность понятия сокрытия данных..." в ООП.

Добавлено через 3 минуты
novi4ok, вы, по моему, не о том. Borkot, не оспаривает саму концепцию, он о том, как она оформляется и почему.
Миниатюры
Зачем нужен спецификатор private?  
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
31.08.2012, 23:28     Зачем нужен спецификатор private? #12
Цитата Сообщение от alsav22 Посмотреть сообщение
novi4ok, вы, по моему, не о том. Borkot, не оспаривает саму концепцию, он о том, как она оформляется и почему.
если так, то здесь снова палка о двух концах: "значения по умолчанию". с одной стороны - меньше писанины, с другой - нужно держать в голове и не перепутать: да "да" или да "нет".
если человек знает всего один язык - нет проблем. но если несколько - уже напрягает. поэтому лучше написать и не морочить голову ни себе, ни читателям. а то "в классе умолчание такое-то, в структуре - такое-то". у меня нет ни времени, ни желания это запоминать. через край льются "умолчания" в кодах, которые приходится сопровождать.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.08.2012, 23:33     Зачем нужен спецификатор private? #13
Харви М. Дейтел, Пол Дж. Дейтел Как программировать на C++ (2008)
Миниатюры
Зачем нужен спецификатор private?  
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.08.2012, 23:37     Зачем нужен спецификатор private? #14
Цитата Сообщение от novi4ok Посмотреть сообщение
если так, то здесь снова палка о двух концах: "значения по умолчанию". с одной стороны - меньше писанины, с другой - нужно держать в голове и не перепутать: да "да" или да "нет".
если человек знает всего один язык - нет проблем. но если несколько - уже напрягает. поэтому лучше написать и не морочить голову ни себе, ни читателям. а то "в классе умолчание такое-то, в структуре - такое-то". у меня нет ни времени, ни желания это запоминать. через край льются "умолчания" в кодах, которые приходится сопровождать.
Согласен. Но, хозяин - барин. Возможность выбора есть, остальное личное дело. Сейчас три книги просмотрел, во всех явно указывается, даже если private вначале.
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
31.08.2012, 23:41     Зачем нужен спецификатор private? #15
Цитата Сообщение от alsav22 Посмотреть сообщение
Харви М. Дейтел, Пол Дж. Дейтел Как программировать на C++ (2008)
правильно сказано. каждый день приходится залазить в классы, определения котоых тянутся на десятки страниц, и каждый, кто когда-то туда "заходил", заводил, похоже, "свой уголок", и там определял снова и private, и public, и protected. чтобы быть отличным... от других.
открывал тему о хорошем стиле кодирования, но завяла, заболтана и пр. а приятно было бы зайти в описание класса и увидеть там порядок. жаль, не определено это стндартами языка. вроде как язык - отдельно, а "правила хорошего тона" - для edel. а все равно неприятно, когда вроде все "по-стандарту", а как семечками наплевано и мат в воздухе висит.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2012, 11:05     Зачем нужен спецификатор private?
Еще ссылки по теме:

Объяснить зачем нужен i C++
Зачем нужно private наследование в классах? C++
C++ Зачем в классе private?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Borkot
 Аватар для Borkot
4 / 4 / 0
Регистрация: 05.05.2012
Сообщений: 182
Записей в блоге: 1
01.09.2012, 11:05  [ТС]     Зачем нужен спецификатор private? #16
Ну понял наверное по своему.То есть Удобство состоит в том,что так поставил private " и не паришься", все понятно.а по поводу объявление умолчанию и объявление со спецификатором private они равнозначны.Может понял не правильно звеняйте.
Yandex
Объявления
01.09.2012, 11:05     Зачем нужен спецификатор private?
Ответ Создать тему
Опции темы

Текущее время: 15:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru