Com implementar la sobrecàrrega i la substitució de funcions a C ++?



Aquest article us presentarà la funció de sobrecàrrega i substitució de funcions en C ++, que són dos dels conceptes molt importants d’OOPS.

C ++ és un fitxer a la natura i té diverses característiques. En aquesta sessió discutirem com implementar la sobrecàrrega de funcions i la substitució de funcions a C ++.

Els següents indicadors es tractaran en aquest article,





Continuem amb aquest article sobre la sobrecàrrega i la substitució de funcions a C ++

què és la serialització a Java

Funció de sobrecàrrega



Les funcions que tenen el mateix nom però paràmetres diferents es permeten a C ++ i s’anomena Funció de sobrecàrrega . També s’anomena polimorfisme en temps de compilació.

Per exemple:

suma (int a, float b) suma (int a, int b) suma (int a, int b, int c)

Aquí hi ha tres funcions amb el mateix nom, però l'únic que les diferencia és que els paràmetres són diferents per a cadascuna. Per tant, en funció dels paràmetres passats, s’anomena una funció.



Si els tipus de retorn de les funcions són diferents, es considerarà invàlid.

Continuem amb aquest article sobre la sobrecàrrega i la substitució de funcions a C ++

Codi de mostra per a la funció de càrrega excessiva

incloure l'ús de l'espai de noms classe std Addició {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< 

Sortida

Sortida: sobrecàrrega i anul·lació de funcions a C ++ - Edureka

Explicació

Al programa anterior, tenim dues funcions a la classe d'addició. Tots dos anomenats add. Un té 2 paràmetres i l’altre té 3 paràmetres.

A la funció principal, creem un objecte d'addició de classe anomenat a. Anomenem funcions add amb 2 i 3 paràmetres respectivament i les funcions add es diuen i realitzen addició.

Així es produeix la sobrecàrrega de la funció.

Continuem amb aquest article sobre la sobrecàrrega i la substitució de funcions a C ++

Substitució de funcions

Quan una classe derivada té una funció amb el mateix nom que una funció de la classe base, s’anomena Substitució de funcions. Les dues funcions han de tenir els mateixos paràmetres a les dues classes.

estableix el camí de java a Windows

Codi de mostra per a la substitució de funcions

#include using namespace std class 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 } 

Sortida:

Explicació:

Al programa anterior, mostrem la funció bàsica, amb el mateix nom a la classe derivada i base. Aquí es crea l'objecte de la classe derivada, de manera que quan cridem visualització només es mostra l'objecte de classe fill.

Continuem amb aquest article sobre la sobrecàrrega i la substitució de funcions a C ++

Ordre de realitzar la substitució

Penseu en el codi:

#include using namespace std class 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 } 

Sortida:

Explicació:

Al programa anterior, mostrem la funció bàsica, amb el mateix nom a la classe derivada i base. Aquí, l’única diferència respecte al programa anterior és que. Creem l'objecte de la classe infantil. A l’objecte classe infantil se li dóna la referència de classe base. Això també es pot fer mitjançant un altre mètode,

Sintaxi

Parent_class_name :: function ()

A l'exemple anterior, el fem servir com:

funció de membre estàtic c ++
BaseClass :: disp ()

Aquesta és una altra manera de superar.

Funció Sobrecàrrega VS Funció anul·lació

Funció Sobrecàrrega Substitució de funcions
L’abast és el mateixL’abast és diferent
Les signatures han de diferir (ex: paràmetre)Les signatures han de ser iguals
Nombre de funcions de sobrecàrrega possiblesNomés és possible una funció primordial
Pot produir-se sense herènciaEs produeix principalment per herència

Per tant, hem arribat al final d’aquest article sobre ‘Sobrecàrrega i anul·lació de funcions a C ++’. Si voleu obtenir més informació, consulteu el per Edureka, una empresa d’aprenentatge en línia de confiança. El curs de formació i certificació de Java J2EE i SOA d’Edureka està dissenyat per formar-vos tant per a conceptes Java bàsics com avançats, juntament amb diversos marcs Java com Hibernate & Spring.

Tens alguna pregunta? Si us plau, mencioneu-ho a la secció de comentaris d’aquest bloc i us respondrem el més aviat possible.