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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Borkot
4 / 4 / 0
Регистрация: 05.05.2012
Сообщений: 184
Записей в блоге: 1
#1

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

31.08.2012, 21:31. Просмотров 1588. Ответов 15
Метки нет (Все метки)

Зачем нужен спецификатор 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, ини же закрытые по умолчанию?Объясните пожайлуста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.08.2012, 21:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Зачем нужен спецификатор private? (C++):

Зачем нужен тип private, если есть protected? - C++
зачем нужен тип private если есть protected??? одного не достаточно? ведь свойства те же. и даже лучше...

Зачем в классе private? - C++
Объясните пожалуйста кто-нибудь зачем в классе private? что он делает? и почему его не в public поставить зачем приват? Тексты надо...

Зачем нужно private наследование в классах? - C++
Если можно, то покажите небольшой пример

Зачем нужен extern? - C++
Знаю, что в интернете полно объяснений зачем он, но я не могу понять... Везде пишут, что он "позволяет объявить переменную без её...

зачем нужен параметр - C++
#include"otobrazenie.h" #include "primary.h" #include <iostream> #include "execution.h" #include"output.h" #include"input.h" ...

Зачем нужен malloc? - C++
malloc - что это? И зачем оно нужно?

15
Invader_Zim
Twilight Parasite
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 908
31.08.2012, 21:35 #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;
 };
для удобства.
0
Петррр
5965 / 3402 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
31.08.2012, 21:37 #3
По умолчанию поля структур public.
0
Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
31.08.2012, 21:37 #4
Некоторые сначала public пишут а уже потом private:
C++
1
2
3
4
5
6
7
class A
{
public:
   ...
private:
   ...
};
1
Invader_Zim
Twilight Parasite
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 908
31.08.2012, 21:38 #5
Петррр, Хорошо было раньше, когда были только структуры...
1
ForEveR
В астрале
Эксперт С++
7980 / 4739 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
31.08.2012, 21:42 #6
Зачем нужен спецификатор prived?
Спасибо. Просто спасибо.

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

Не по теме:

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



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

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

Объяснить зачем нужен i - C++
#include <iostream> #include <conio.h> using namespace std; int main() { cout << "Enter chislo and stepen: "; ...

Зачем нужен inline - C++
Скажите пожалуйста, зачем нужна команда inline? Изучаю классы, и там говорится мимолётом, что эта функция повысит эффективность, но так и...

Зачем нужен полиморфизм - C++
читал про то что такое полиморфизм, виртуальные методы и тд, вот промер из статьи про виртуальный диструктор class base { ...

Зачем нужен конструктор? - C++
Всем доброго дня. Ребят такая проблема объясните мне на пальцах для чего нужен конструктор в классах. Я уже столько толмудов перерыл но...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru