Especificadores de acesso
Em declarações de classe, os membros podem ter especificadores de acesso.
Gramática
especificador de acesso : lista de membrosopt
especificador de acesso: um dos
ParticularPúblico
protected
O especificador de acesso determina o acesso aos nomes que o seguem, até o próximo especificador de acesso ou o fim da declaração da classe.A imagem seguinte ilustra este conceito.
Controle de acesso em Classes
Embora somente dois especificadores de acesso são mostrados na figura, não há nenhum limite para o número dos especificadores de acesso em uma declaração de classe determinada.Por exemplo, a classe de ponto na Figura podiam tão facilmente ser declarada usando especificadores de acesso de vários da seguinte forma:
// 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()
{
}
Observe que não há nenhuma ordem específica necessária para acesso de membro, conforme mostrado no exemplo anterior.A alocação de armazenamento de objetos dos tipos de classe é dependente de implementação, mas os membros são garantidos seja atribuído um mais endereços de memória entre especificadores de acesso.