Язык программирования C++. Вводный курс


Доступ к членам - часть 2


доступен из любого места программы. Класс, скрывающий информацию, оставляет открытыми только функции-члены, определяющие операции, с помощью которых внешняя программа может манипулировать его объектами;

·         закрытый член

доступен только функциям-членам и друзьям

класса. Класс, который хочет скрыть информацию, объявляет свои данные-члены закрытыми;

·         защищенный член

ведет себя как открытый по отношению к производному классу и как закрытый по отношению к остальной части программы. (В главе 2 мы видели пример использования защищенных членов в классе IntArray. Детально они рассматриваются в главе 17, где вводится понятие наследования.)

В следующем определении класса Screen

указаны секции public и private:

class Screen {

public:

   void home() { _cursor = 0; }

   char get() { return _screen[_cursor]; }

   char get( int, int );

   void move( int, int );

   // ...

private:

   string             _screen;

   string::size_type  _cursor;

   short              _height, _width;

};

Согласно принятому соглашению, сначала объявляются открытые члены класса. (Обсуждение того, почему в старых программах C++ сначала шли закрытые члены и почему этот стиль еще кое-где сохранился, см. в книге [LIPPMAN96a].) В теле класса может быть несколько секций public, protected и private. Каждая секция продолжается либо до метки следующей секции, либо до закрывающей фигурной скобки. Если спецификатор доступа не указан, то секция, непосредственно следующая за открывающей скобкой, по умолчанию считается private.




Начало  Назад  Вперед