Comment émuler le super mot-clé en C++

Comment Emuler Le Super Mot Cle En C



Certains langages de programmation orientés objet ont le mot-clé 'super', qui permet à une sous-classe d'invoquer des fonctions et des membres de la classe de base ou parent. Certains langages de programmation déterminent comment le mot-clé 'super' doit être utilisé spécifiquement. Mais dans le cas de C++, le mot-clé super n'est pas utilisé de la même manière qu'en Java et Python. Dans ce tutoriel, nous allons étudier et démontrer l'émulation de super mots clés en C++.

Comment émuler le super mot-clé en C++

Le mot clé dit 'super' n'est pas prédéfini dans le compilateur C++. L'héritage et la substitution de fonction sont utilisés pour développer une sous-classe qui prend les membres et les méthodes de sa super-classe. Indiquez simplement l'identifiant de la 'superclasse' et le membre ou la méthode auquel vous souhaitez accéder avec l'opérateur (::).







Syntaxe

Vous pouvez accéder à une méthode dans une superclasse nommée 'parent_class' qui a un nom comme 'parent_function()' dans une sous-classe en utilisant la syntaxe ci-dessous :



parent_class :: parent_function ( ) ;



Exemple

En utilisant C++ pour émuler la fonctionnalité de super mot clé pour accéder aux propriétés d'une classe parent, utilisez l'opérateur de résolution de portée (::).





L'opérateur de résolution de portée (::) peut être utilisé pour obtenir les membres d'une classe parent chaque fois qu'une classe en hérite. Considérez le code suivant comme exemple :

#include
en utilisant l'espace de noms std ;

classe base_Class {
public:
void baseFunction ( ) {
écoute << 'Ceci est la sortie de baseFunction de la classe de base' << fin ;
}
} ;
classe dérivée_Class : public base_Class {
public:
annuler dFunction ( ) {
base_Class :: baseFunction ( ) ;
écoute << 'Il s'agit d'une classe dérivée qui accède à baseFunction à partir de la classe de base' << fin ;
}
} ;
int main ( ) {
derieved_Class d ;
d.dFonction ( ) ;
retour 0 ;
}


Le programme ci-dessus a une fonction de la classe de base ou parent baseFunction(). Une autre classe dérivée est définie qui accède à baseFunction() dans dFunction(). La méthode principale consiste d'abord à créer une instance de la classe dérivée et à appeler dFunction() qui imprime la sortie de baseFunction() et dFunction().



Conclusion

Bien que le mot-clé 'super' n'existe pas directement en C++, son comportement peut être imité en combinant l'héritage et les remplacements de fonction. Nous pouvons appeler et utiliser avec succès des méthodes ou des membres de la superclasse en appelant d'abord les fonctions de la superclasse avant de passer à l'implémentation de la sous-classe. Ce message a également fourni une instance de code C++ pour votre meilleure compréhension.