Como emular a palavra-chave super em C++

Como Emular A Palavra Chave Super Em C



Algumas linguagens de programação baseadas em objeto têm a palavra-chave “super”, que permite que uma subclasse invoque funções e membros da classe base ou pai. Algumas linguagens de programação determinam como a palavra-chave “super” deve ser usada especificamente. Mas no caso de C++, a palavra-chave super não é usada da mesma maneira que em Java e Python. Neste tutorial, estudaremos e demonstraremos a emulação de super palavras-chave em C++.

Como emular a palavra-chave super em C++

A palavra-chave conhecida como “super” não é predefinida no compilador C++. A herança e substituição de função são usadas para desenvolver uma subclasse que recebe os membros e métodos de sua superclasse. Basta informar o identificador da “superclasse” e o membro ou método que deseja acessar com o operador (::).







Sintaxe

Você pode acessar um método em uma superclasse chamada “parent_class” que tenha um nome como “parent_function()” em uma subclasse usando a sintaxe mostrada abaixo:



parent_class::parent_function ( ) ;



Exemplo

Usando C++ para emular a funcionalidade de palavra-chave super para acessar as propriedades de uma classe pai, use o operador de resolução de escopo (::).





O operador de resolução de escopo (::) pode ser empregado para obter os membros de uma classe pai sempre que uma classe herda dela. Considere o seguinte código como exemplo:

#include
usando namespace std;

classe base_Classe {
público:
void baseFunction ( ) {
cout << 'Esta é a saída de baseFunction da classe base' << endl;
}
} ;
class derivada_Class: public base_Class {
público:
void dFunction ( ) {
base_Class::baseFunction ( ) ;
cout << 'Esta é uma classe derivada que acessa baseFunction da classe base' << endl;
}
} ;
int principal ( ) {
derivada_Classe d;
d.dFunção ( ) ;
retornar 0 ;
}


O programa acima está tendo uma função da classe base ou pai baseFunction(). Outra classe derivada é definida que está acessando a baseFunction() na dFunction(). O método principal primeiro cria uma instância da classe_derivada e chama o dFunction() que imprime a saída de baseFunction() e dFunction().



Conclusão

Embora a palavra-chave “super” não exista diretamente em C++, seu comportamento pode ser imitado pela combinação de herança e substituições de funções. Podemos chamar e usar com sucesso métodos ou membros da superclasse chamando as funções da superclasse antes de passar para a implementação da subclasse. Esta postagem também forneceu uma instância do código C++ para sua melhor compreensão.