6.6 Контроль доступа.

   


Назад  |  Вперёд

Член класса может быть частным (private), защищенным (protected) или общим (public):

Эти правила соответствуют делению обращающихся к классу функций на три вида: функции, реализующие класс (его друзья и члены), функции, реализующие производный класс (друзья и члены производного класса) и все остальные функции.

Контроль доступа применяется единообразно ко всем именам. На контроль доступа не влияет, какую именно сущность обозначает имя. Это означает, что частными могут быть функции-члены, константы и т.д. наравне с частными членами, представляющими данные:

           class X {
           private:
             enum { A, B };
             void f(int);
             int a;
           };

           void X::f(int i)
           {
             if (i<A) f(i+B);
             a++;
           }

           void g(X& x)
           {
             int i = X::A;     // ошибка: X::A частный член
             x.f(2);           // ошибка: X::f частный член
             x.a++;            // ошибка: X::a частный член
           }

Назад  |  Вперёд


OtDiatlovaOU
К началу книги

Оформление и дизайн книги OtDiatlovaOU.
Вся книга, архив.