Справочное руководство по C++

R.11.1 Спецификации доступа.

Описания членов могут быть снабжены спецификацией доступа (§R.10):

Спецификация-доступа: список-членов opt.

Спецификация-доступа задает правила доступа к членам, которые действуют до конца жизни класса или пока не появится другая спецификация-доступа, например,

Class X {

 int a; // X::a частный по определению: учитывается 'class'.

Public:

 int b; // X::b общий.

 int c; // X::c общий.

};

Допустимо любое число спецификаций доступа и задавать их можно в любом порядке, например,

Struct S {

 int a; // S::a общий по определению: учитывается `struct'.

Protected:

 int b; // S::b защищенный.

Private:

 int c; // S::c частный.

Public:

 int d; // S:: d общий.

};

Порядок размещения членов, представляющих данные, которые имеют разные спецификации-доступа, определяется реализацией (§R.9.2).