Глава 14. Базовые концепции классов___________________________339
Регулирование сложности
Инкапсуляция небольших частей, вместе образующих цельную, законченную конструкцию, поможет вам как программисту держать под контролем уровень сложности проектов. С хорошо продуманными классами можно оперировать так же, как с элементарными типами данных, посредством тех же операций и столь же простых обозначений.
Разделяй и властвуй! — вот что должно стать вашим девизом. Примеры того, как претворить этот девиз в жизнь, мы рассмотрим после более полного знакомства с элементами классов.
Спецификаторы доступа
Спецификаторы доступа определяют степень открытости отдельных внутренних областей класса внешнему окружению. Как вы уже знаете, члены классов по умолчанию являются закрытыми, что эквивалентно заданию спецификатора private. Остальные уровни доступности — это public и protected.
Такое разграничение было введено по нескольким причинам. Для разработки сложных программных систем чрезвычайно важно иметь возможность держать сложность проекта под контролем. Следовательно, язык должен обеспечивать средства поддержки маскировки деталей. Назначение спецификаторов public, protected и private состоит в том, чтобы вы могли указать пользователям ваших классов, что вы предоставляете в их распоряжение, а что нет. Как вы увидите, это зависит от того, что вы намереваетесь делать при помощи классов.
public
Спецификатор доступа public задает максимальную степень доступности. Это означает, что любые функции, объявленные после ключевого слова public и до другого спецификатора доступны любому коду, как внутри класса, так и извне.
Синтаксис спецификатора public в точности такой же, как и для private и
protected:
class PUBLIC (
public:
void Function();
int data;
};