Przeciążanie funkcji

Kiedy mamy wiele funkcji o tej samej nazwie, ale różnych parametrach, mówi się, że są one przeciążone. Technika ta służy do zwiększenia czytelności programu.

Istnieją dwa sposoby na przeciążenie funkcji, tj.

  • Mając różną liczbę argumentów
  • Posiadanie różnych typów argumentów

Przeciążanie funkcji jest zwykle wykonywane, gdy musimy wykonać jedną operację z różną liczbą lub typami argumentów.

Przeciążanie funkcji w C ++

Poniższy przykład pokazuje, jak przeciążanie funkcji odbywa się w C ++, który jest językiem programowania obiektowego -

#include <iostream> 
using namespace std;  
void addnum(int,int); 
void addnum(int,int,int); 

int main() {     
   addnum (5,5); 
   addnum (5,2,8); 
   return 0; 
} 

void addnum (int x, int y) {     
   cout<<"Integer number: "<<x+y<<endl; 
} 

void addnum (int x, int y, int z) {     
   cout<<"Float number: "<<x+y+z<<endl; 
}

Wytworzy następujący wynik -

Integer number: 10 
Float number: 15

Przeciążanie funkcji w Erlangu

Poniższy przykład pokazuje, jak wykonać przeciążenie funkcji w Erlangu, który jest funkcjonalnym językiem programowania -

-module(helloworld).  
-export([addnum/2,addnum/3,start/0]).   

addnum(X,Y) ->  
   Z = X+Y,  
   io:fwrite("~w~n",[Z]).  
    
addnum(X,Y,Z) ->  
   A = X+Y+Z,  
   io:fwrite("~w~n",[A]).  
  
start() ->
   addnum(5,5),     addnum(5,2,8).

Wytworzy następujący wynik -

10 
15