Função da classe base de chamada em C ++

Função da classe base de chamada em C ++
Existe um conceito de herança em muitas linguagens de programação como C++. Ele lhe proporcionará a oportunidade de usar as classes infantis em seu programa que estão sendo derivadas de suas respectivas classes base. Uma classe infantil pode acessar os membros de dados de sua classe base específica, eu.e., variáveis ​​e métodos. Neste guia, discutiremos diferentes maneiras de executar ou chamar a função de chamada base em c++. Então, vamos começar com o lançamento do console terminal do Ubuntu 20.04 Sistema operacional Linux usando a chave de atalho “Ctrl+Alt+T” em sua área de trabalho. Vamos dar uma olhada em alguns dos exemplos simples para chamar um método base em C ++ agora.

Exemplo 01:

O primeiro exemplo começou com a geração de um novo arquivo C ++ que será usado para criar um código. A instrução "toque" muito conhecida é utilizada aqui para criar a "base.Arquivo CC ”. Este arquivo deve ser aberto em algum editor que já está embutido no Ubuntu 20.04 Sistema, eu.e., vim, nano ou editor de texto. Escolhemos o editor "nano" para abri -lo.

O código foi iniciado a partir da inclusão de alguns arquivos de cabeçalho necessários de C ++ como "iostream" e "bits/stdc++.h ". O arquivo é aberto no editor vazio do GNU Nano do Ubuntu 20.04 Sistema. A linguagem C ++ usa o espaço para nome "std" para utilizar as cláusulas "cout" e "CIN" para exibir e obter entrada. Começamos uma nova classe, "A" com um Method Method Show (). Esta função contém uma única declaração de cout para exibir que esta é uma função de classe pai que está executando agora. Após esta aula, criamos uma nova classe, "B" herdado da classe "A". Isso significa que a classe B é uma classe infantil de classe A e pode herdar suas propriedades. A classe “B” também contém uma função de tipo público chamado “Display ()”. Esta função utiliza uma única declaração "cout" aqui para exibir que essa função foi executada dentro da classe infantil deste programa. Agora, a classe infantil terminou aqui. Iniciamos o método principal () aqui para executar as classes.

Agora, tentaremos chamar a função de "mostrar" da classe A dos pais A sem criar seu objeto. Estaremos usando o objeto da classe infantil B para esse fim. Portanto, dentro da função Main (), criamos um objeto "Obj" da Criança Criança B usando o "DOT" entre o nome da classe e o nome do objeto. Este objeto "Obj" foi utilizado aqui com o sinal "Dot" para chamar a função "show ()" da classe pai denominada "a". Não estamos usando este objeto para chamar a função de uma classe infantil B. Se a classe infantil B continha uma função construtora, essa função do construtor será executada logo após criar um objeto. Este é o conceito de herança usando um objeto de classe infantil para chamar a função da respectiva classe pai. É assim que nós fazemos. Vamos salvar e desistir do código com Ctrl+S e Ctrl+X atalhos consecutivos.

Depois de salvar o código, estamos de volta ao shell do terminal. Antes da execução, o código precisa ser compilado no shell com algum compilador C ++. Ubuntu 20.04 está chegando com um compilador "g ++" que pode ser instalado com o pacote "apt". Então, usamos esse compilador "g ++" para compilar o arquivo recém -fabricado e depois executá -lo com um "./a.fora ”Ubuntu 20.04 Instruções. Em troca, a função da classe pai "show ()" foi executada e recebemos a mensagem de exibição.

Exemplo 02:

Nosso primeiro exemplo foi chamar uma função de uma classe base que contém um nome único em geral, o código. Mas, o que você fará quando as classes de pais e filhos contêm o mesmo nome com os mesmos parâmetros e tipos de retorno? Vamos dar uma olhada nesse método para chamar uma função de classe base. Após os arquivos do cabeçalho e o namespace, declaramos duas classes, A e B. A é a classe pai de B, e a classe B deriva as propriedades da classe pai A. Ambas as classes A e B contêm uma função "mesmo ()" com o mesmo nome e a mesma implementação separadamente. A implementação de ambas.

Usamos a chamada de função para o método da classe A dos pais “MESMO ()” dentro da classe infantil B usando o sinal “::” na última linha. Isso é para evitar o inconveniente que pode ser causado quando um objeto chamará o mesmo nome da função. Então, dentro da função Main (), criamos um objeto "B" da classe infantil "B". Este objeto "B" é usado para chamar a função "mesma" da classe infantil B. Quando um usuário tenta chamar o mesmo nome função da classe pai com o mesmo objeto, ele lançará uma exceção. Devido ao uso da chamada de função "a :: mesmo" na função da classe infantil, isso evitará a exceção e não há necessidade de criar um novo objeto. Salve seu código e deixe o editor.

A compilação e execução do código atualizado nos levam à saída abaixo. Você pode ver que as duas funções de mesmo nome da classe criança e pai são executadas com um único objeto.

Exemplo 03:

Vamos ver outro método para chamar a função de mesmo nome da chamada base em C em C++. Então, atualizamos o mesmo código. Os arquivos de cabeçalho, espaço para nome, pai e crianças são inalterados, eu.e., não atualizado. A única atualização foi feita dentro do método "main ()" deste código. Criamos dois objetos, B1 e B2, da classe infantil “B”. O objeto B1 está chamando a função "show ()" da classe infantil diretamente. Enquanto o objeto B2 está chamando a função da classe pai () usando o sinal "::" entre o nome da classe e o nome da função. Vamos apenas executar este código depois de salvá -lo.

O resultado dessa execução de código funcionou com sucesso, e podemos ver que a função de classe base também é chamada usando o objeto de classe infantil "B2".

Exemplo 04:

O último exemplo é bem diferente de todos os exemplos acima. O código geral permanece inalterado enquanto a função principal () foi atualizada. Criamos um objeto "B" da classe infantil B. Este objeto "B" chama a função da classe infantil "mesma". Em seguida, criou um ponteiro "P" da classe base "A" do tipo que está apontando para o objeto "B" da classe infantil B. Este ponteiro é então usado para chamar a mesma função () da classe base A. Vamos executar este código e ver os resultados.

Depois de executar este código de ponteiro atualizado, vimos que a função de classe base foi executada usando o ponteiro depois de executar o método da classe infantil. É assim que nós fazemos.

Conclusão:

Este artigo é um super bônus para os usuários que procuram conceitos de herança. Ele demonstrou uma função de classe base de chamada usando o objeto de classe infantil ou objeto de classe pai. Por outro lado, também utilizamos o conceito de ponteiros para chamar a função de classe base da função principal de um programa.