Índice
O que são especificadores de acesso em C++
Em C ++, os especificadores de acesso são palavras -chave reservadas que servem ao objetivo de determinar a visibilidade e a acessibilidade dos membros de uma classe. Essas palavras -chave são usadas para restringir ou permitir o acesso a diferentes membros da classe em um programa.
Os especificadores de acesso determinam a partir de onde um membro da classe pode ser acessado. Esses especificadores permitem que o código C ++ acesse um membro da classe de dentro ou fora de uma classe. Eles também permitem que classes derivadas acessem os principais membros da classe.
No C ++, os especificadores de acesso podem ser categorizados em três especificadores diferentes:
Esses especificadores controlam a visibilidade dos membros da classe, que determina onde e por quem podem ser acessados no programa.
O que é privado em C++
Privado é um especificador de acesso em C ++ que limita a visibilidade e a acessibilidade dos membros da classe a apenas o classe em si. Os membros definidos como privados não são acessíveis de fora da classe ou de suas classes derivadas. Os membros privados estão ocultos de outras classes, o que os impede de modificar ou acessar os dados.
O que está protegido em C++
Protegido é um especificador de acesso em C ++ que limita a visibilidade e a acessibilidade dos membros da classe ao classe em si e os seus classes derivadas. Os membros definidos como protegidos podem ser acessados de dentro de uma classe ou de suas classes derivadas, mas não de fora da classe. Os membros protegidos também estão ocultos de outras classes, o que os impede de modificar ou acessar os dados.
Diferença entre privado e protegido em c++
A principal diferença entre privado e protegido em C ++ é o nível de acessibilidade dos alunos da classe. O acesso a membros privados é restrito na classe, enquanto os membros protegidos também são acessíveis a partir de classes derivadas.
Outra diferença é que os membros privados estão completamente ocultos de outras classes, enquanto os membros protegidos estão parcialmente ocultos. Isso significa que as classes derivadas podem acessar membros protegidos, mas não os modificam diretamente. Por outro lado, os membros privados não podem ser acessados ou modificados por qualquer outra classe.
Exemplos de especificadores de acesso privado e protegido
Para demonstrar o conceito de especificadores de acesso na programação orientada a objetos, é útil fornecer exemplos de especificadores de acesso privado e protegido. Vamos dar uma olhada em como os especificadores de acesso privado e protegidos funcionam e alguns exemplos de como eles podem ser usados.
Exemplo de aula privada em C++
O especificador de acesso privado restringe a visibilidade de um membro da classe dentro da própria classe. O código abaixo explica a classe privada em um programa C ++:
#incluirEste programa C ++ define uma pessoa de classe com duas variáveis de membro privado nome completo e anos, e duas funções de membro público getPersonInfo () e DisplayPersonInfo ().
A função getPersonInfo () leva o usuário a inserir o nome completo e a idade da pessoa. Depois disso, os armazena nas variáveis de membro privado FullName e Yearsold, respectivamente.
A função DisplayPersonInfo () simplesmente imprime o nome da pessoa e a idade do console.
Na função Main (), criamos uma pessoa do objeto da classe Pessoa e chamamos suas funções getPersonInfo () e DisplayPersonInfo () para levar o usuário a inserir as informações de uma pessoa e depois exibi -las no console.
Exemplo de classe protegida em C++
O especificador de acesso protegido limita a visibilidade de um membro da classe a dentro da classe e suas subclasses. Vamos dar um exemplo que explica classes protegidas em um programa C ++.
#incluirAqui neste código, a classe base é uma pessoa com membros particulares nome completo e idade, e um membro protegido número de identidade. A turma derivada é estudante de uma cidade privada e funções públicas de membros setid (), getStudentinfo () e displayStudentInfo ().
A função setId () define o número de identificação, que define um membro protegido da classe base. A função getStudentInfo () lê os detalhes básicos do aluno, como nome completo, idade e a cidade em que vivem.
O DisplayStudentInfo () Função imprime todos os detalhes do aluno, que incluem seu número de identificação, nome completo, idade e cidade.
Conclusão
Especificadores de acesso privado e protegido na programação orientada a objetos garantem encapsulamento e ocultação de dados. Os membros privados estão completamente ocultos de outras classes, enquanto os membros protegidos estão parcialmente ocultos e podem ser acessados por classes derivadas. A escolha entre o uso de especificadores de acesso privado e protegido depende do design e implementação da classe. Leia o artigo para entender os detalhes dos especificadores de acesso privado e protegido.