Com emular la super paraula clau en C++

Com Emular La Super Paraula Clau En C



Alguns llenguatges de programació basats en objectes tenen la paraula clau 'super', que permet que una subclasse invoqui funcions i membres de la classe base o pare. Alguns llenguatges de programació determinen com s'ha d'utilitzar específicament la paraula clau 'super'. Però en el cas de C++, la paraula clau super no s'utilitza de la mateixa manera que a Java i Python. En aquest tutorial, estudiarem i demostrarem l'emulació de súper paraules clau en C++.

Com emular la super paraula clau en C++

La paraula clau coneguda com 'super' no està predefinida al compilador C++. L'herència i la substitució de funcions s'utilitzen per desenvolupar una subclasse que pren els membres i els mètodes de la seva superclasse. Només cal que proporcioneu l'identificador de la 'superclasse' i el membre o mètode al qual voleu accedir amb l'operador (::).







Sintaxi

Podeu accedir a un mètode en una superclasse anomenada 'parent_class' que té un nom com 'parent_function()' en una subclasse mitjançant la sintaxi que es mostra a continuació:



parent_class::parent_function ( ) ;



Exemple

Si utilitzeu C++ per emular la funcionalitat de la súper paraula clau per accedir a les propietats d'una classe pare, utilitzeu l'operador de resolució d'àmbit (::).





L'operador de resolució d'àmbit (::) es pot utilitzar per obtenir els membres d'una classe pare sempre que una classe n'hereta. Considereu el codi següent com a exemple:

#inclou
utilitzant namespace std;

classe base_Class {
públic:
void baseFunction ( ) {
cout << 'Aquesta és la funció fora de base de la classe base' << endl;
}
} ;
class derived_Class: classe_base pública {
públic:
void dFunction ( ) {
base_Class::baseFunction ( ) ;
cout << 'Aquesta és una classe derivada que accedeix a baseFunction des de la classe base' << endl;
}
} ;
int principal ( ) {
derivada_Classe d;
d.dFunció ( ) ;
tornar 0 ;
}


El programa anterior té una funció de la classe base o pare baseFunction(). Es defineix una altra classe derivada que accedeix a la baseFunction() a la dFunction(). El mètode principal és crear primer una instància de la classe_derivada i cridar a la dFunction() que imprimeix la sortida de baseFunction() i dFunction().



Conclusió

Tot i que la paraula clau 'super' no existeix directament en C++, el seu comportament es pot imitar combinant l'herència i les substitucions de funcions. Podem cridar i utilitzar amb èxit mètodes o membres de la superclasse cridant primer a les funcions de la superclasse abans de passar a la implementació de la subclasse. Aquesta publicació també va proporcionar una instància de codi C++ per a una millor comprensió.