Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 02.06.2012
Сообщений: 6
1

Зачем оставлять переменные-члены класса закрытыми?

04.07.2012, 19:45. Просмотров 1138. Ответов 2
Метки нет (Все метки)


Вот пишут,что нужно переменные - члены класса оставлять закрытыми, используя для их установки значений или возвращений значений, методы доступа. Но зачем так делать?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.07.2012, 19:45
Ответы с готовыми решениями:

Стоит ли делать все методы и переменные-члены класса list статическими
Сделал класс list(знаю, что существует уже этот stl контейнер, просто сделал для себя), стоит ли...

Удаление объектов, на которые ссылаются переменные-члены класса
Во многих примерах по Qt в конструкторе, например, диалога, при помощи new создается объект,...

класс «Строка» (данные-члены класса – строчка, функции-члены класса – операции)
Помогите пожалйуста с реализацией программы... Реализовать класс «Строка» (данные-члены класса –...

При вызове функции Sides () которая по сути должна менять переменные члены класса — ничего не происходит
Всем привет! Такой вопрос, в листинге объявлен класс Rect и определен объект theRect. При вызове...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
Записывайтесь на профессиональные курсы C++ разработчиков
2
60 / 21 / 2
Регистрация: 23.02.2012
Сообщений: 36
04.07.2012, 20:01 2
Лучший ответ Сообщение было отмечено как решение

Решение

Что бы запретить прямое изменение.

У тебя есть счет. Это класс. Сколько денег на счету - внутренная закрытая переменная.
Есть методы доступа и изменения - посмотреть баланс, положить денег, снять денег. Только этими тремя операциями можно менять сумму. Соответсвенно, эти операции можно сделать безопасными, они могут делать запись в журнале, можно добавить блокировки, проверку на снятие и т.д. Их можно сделать достаточно надежными, чтобы ты не беспокоилась, что твои деньги доступны всем.

А теперь представь, что сумма на счету - это просто открытая переменная. Меняет, кто хочет. Ты бы воспользовалась услугами такого банка?
3
0 / 0 / 0
Регистрация: 02.06.2012
Сообщений: 6
04.07.2012, 20:39  [ТС] 3
Не-а, не воспользовалась бы)
Спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.07.2012, 20:39

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

класс с закрытыми полями, где операции реализуются как методы класса
Создайте класс с закрытыми полями, где операции реализуются как методы класса. Класс vector3D,...

Создать класс, описывающий магазин с 6-ю закрытыми / открытыми полями и 6-ю закрытыми / открытыми свойствами
Всем доброго времени суток. Такая вот задача. 2. Создать класс, описывающий магазин с 6-ю...

Наследование от protected класса: будут ли public члены класса Б доступны классу А
Добрый день! Если пронаследовать public класс А от protected класса Б, будут ли public члены...

Использовать private члены класса внутри static ф-ий этого же класса.
Все привет! Такая вот проблема. Есть класс (естественно тестовый, для пример): class SCRIPT{ ...


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

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

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