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

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

Восстановить пароль Регистрация
 
Леночка93
 Аватар для Леночка93
0 / 0 / 0
Регистрация: 02.06.2012
Сообщений: 6
04.07.2012, 19:45     Зачем оставлять переменные-члены класса закрытыми? #1
Вот пишут,что нужно переменные - члены класса оставлять закрытыми, используя для их установки значений или возвращений значений, методы доступа. Но зачем так делать?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2012, 19:45     Зачем оставлять переменные-члены класса закрытыми?
Посмотрите здесь:

C++ Статические члены класса
C++ ООП. Переменные-члены в динамической памяти.
класс «Строка» (данные-члены класса – строчка, функции-члены класса – операции) C++
C++ Статические члены класса
C++ Private и public члены класса
При вызове функции Sides () которая по сути должна менять переменные члены класса — ничего не происходит C++
Указатели на члены класса C++
Зачем переменные инициализируются нулем? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
samdavydov
59 / 20 / 2
Регистрация: 23.02.2012
Сообщений: 36
04.07.2012, 20:01     Зачем оставлять переменные-члены класса закрытыми? #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Что бы запретить прямое изменение.

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

А теперь представь, что сумма на счету - это просто открытая переменная. Меняет, кто хочет. Ты бы воспользовалась услугами такого банка?
Леночка93
 Аватар для Леночка93
0 / 0 / 0
Регистрация: 02.06.2012
Сообщений: 6
04.07.2012, 20:39  [ТС]     Зачем оставлять переменные-члены класса закрытыми? #3
Не-а, не воспользовалась бы)
Спасибо
Yandex
Объявления
04.07.2012, 20:39     Зачем оставлять переменные-члены класса закрытыми?
Ответ Создать тему
Опции темы

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