Поделиться через


Спецификаторы доступа

В объявлениях класса члены могут иметь описатели доступа.

Грамматика

описатель-доступа : список-членовнеоб

  • описатель-доступа: один из
    private

    public

    protected

Описатель-доступа определяет доступ к следующим за ним именам до следующего описателя-доступа или до конца объявления класса. Эта структура показана на следующем рисунке.

Управление доступом в классах

Управление доступом в классах

Хотя на рисунке представлено только два описателя доступа, количество описателей доступа в данном объявлении класса не ограничено. Например, класс Point на рисунке можно так же легко объявить с помощью нескольких описателей доступа, как показано ниже.

// access_specifiers1.cpp
class Point
{
public:                  // Declare public constructor.
    Point( int, int );
private:                 // Declare private state variable.
    int _x;
public:                  // Declare public constructor.
    Point();
public:                  // Declare public accessor.
    int &x( int );
private:                 // Declare private state variable.
    int _y;
public:                  // Declare public accessor.
    int &y( int );
};

int main()
{
}

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

См. также

Ссылки

Управление доступом к членам