Comment implémenter la surcharge et le remplacement de fonctions en C ++?



Cet article vous présentera la surcharge et le remplacement de fonctions en C ++, qui sont deux des concepts très importants de OOPS.

C ++ est un dans la nature et il se vante de diverses caractéristiques. Dans cette session, nous discuterons de la façon d'implémenter la surcharge de fonction et le remplacement de fonction en C ++.

Les pointeurs suivants seront traités dans cet article,





Passer à cet article sur la surcharge et le remplacement de fonctions en C ++

Surcharge de fonction



Les fonctions ayant le même nom mais des paramètres différents sont autorisées en C ++ et sont appelées Surcharge de fonction . Il est également appelé polymorphisme à la compilation.

Par exemple:

somme (int a, flottant b) somme (int a, int b) somme (int a, int b, int c)

Ici, il y a trois fonctions avec le même nom mais la seule chose qui les différencie est que les paramètres sont différents sur chacune. Ainsi, en fonction des paramètres passés, une fonction est appelée.



Si les types de retour des fonctions sont différents, cela est considéré comme non valide.

Passer à cet article sur la surcharge et le remplacement de fonctions en C ++

Exemple de code pour la fonction de surcharge

include using namespace std class Addition {public: int add (int n1, int n2) {return n1 + n2} int add (int n1, int n2, int n3) {return n1 + n2}} int main (void) {Addition un cout< 

Production

somme des chiffres en java

Sortie - Surcharge et remplacement de fonction en C ++ - Edureka

Explication

Dans le programme ci-dessus, nous avons deux fonctions dans la classe d'addition. Les deux nommés add. L'un a 2 paramètres et l'autre 3 paramètres.

Dans la fonction principale, nous créons un objet d'ajout de classe appelé a. Nous appelons les fonctions add avec respectivement 2 et 3 paramètres et les fonctions add sont appelées et elles effectuent l'addition.

C'est ainsi que s'effectue la surcharge de fonction.

Passer à cet article sur la surcharge et le remplacement de fonctions en C ++

Remplacement de fonction

Lorsqu'une classe dérivée a une fonction avec le même nom qu'une fonction de la classe de base, elle est appelée Remplacement de fonction. Les deux fonctions doivent avoir les mêmes paramètres dans les deux classes.

Exemple de code pour le remplacement de fonction

#include en utilisant l'espace de noms classe std BaseClass {public: void disp () {cout<<'Parent Class Function' } } class DerivedClass: public BaseClass{ public: void disp() { cout<<'Child Class Function' } } int main() { DerivedClass obj = DerivedClass() obj.disp() return 0 } 

Production:

Explication:

Dans le programme ci-dessus, nous montrons la fonction de base, avec le même nom dans la classe dérivée et la classe de base. Ici, l'objet est créé à partir de la classe dérivée. Ainsi, lorsque nous appelons display, seul l'objet de classe enfant est affiché.

Passer à cet article sur la surcharge et le remplacement de fonctions en C ++

Ordre pour effectuer le remplacement

Considérez le code:

#include en utilisant l'espace de noms classe std BaseClass {public: void disp () {cout<<'Function of Parent Class' } } class DerivedClass: public BaseClass{ public: void disp() { cout<<'Function of Child Class' } } int main() { BaseClass obj = DerivedClass() obj.disp() return 0 } 

Production:

Explication:

Dans le programme ci-dessus, nous montrons la fonction de base, avec le même nom dans la classe dérivée et la classe de base. Ici, la seule différence avec le programme précédent est que. Nous créons l'objet de la classe enfant. L'objet de classe enfant reçoit la référence de la classe de base. Cela peut également être fait en utilisant une autre méthode,

Syntaxe

Parent_class_name :: function ()

Dans l'exemple ci-dessus, nous l'utilisons comme,

BaseClass :: disp ()

C'est une autre façon de passer outre.

comment faire une alerte en javascript

Surcharge de fonction VS Remplacement de fonction

Surcharge de fonction Remplacement de fonction
La portée est la mêmeLa portée est différente
Les signatures doivent différer (ex: paramètre)Les signatures doivent être identiques
Nombre de fonctions de surcharge possiblesUne seule fonction prioritaire possible
Peut se produire sans héritageCela se produit principalement en raison de l'héritage

Ainsi, nous sommes arrivés à la fin de cet article sur «Surcharge et remplacement de fonctions en C ++». Si vous souhaitez en savoir plus, consultez le par Edureka, une entreprise d'apprentissage en ligne de confiance. Le cours de formation et de certification Java J2EE et SOA d'Edureka est conçu pour vous former aux concepts Java de base et avancés ainsi qu'à divers frameworks Java tels que Hibernate et Spring.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de ce blog et nous vous répondrons dans les plus brefs délais.