Overloading Function

funcion_overloading

Dua fungsi atau lebih yang memiliki nama yang sama dengan argument/parameter yang berbeda dikenal sebagai overloading function.

Dalam C++, overloading function dapat dibuat dengan membedakan function signature-nya.

  1. Jumlah argument
  2. Type Data argument
  3. Urutan type data argument

Kita dapat membuat lebih dari 1 function dengan nama yang sama namun function signature yang beda.

Program C++ berikut ini mempunyai overloading function “Volume”. Ada 3 fungsi volume dengan signature yang beda.
Fungsi volume pertama dan kedua memiliki 1 argumen namun berbeda tipe data.
Fungsi volume ketiga dan keempat memiliki 2 argumen namun berbeda urutan type datan argumen.
Fungsi volume kelima memiliki 4 argumen, berbeda jumlah argumen dengan fungsi volume lainnya.
Dengan demikian kita bisa memiliki 5 fungsi yang namanya sama, Volume, tapi signaturenya berbeda.

#include <iostream>
using namespace std;
// volume kubus
int volume(int s)
{   return s*s*s;
}
// volume bola
int volume(double r)
{   return 3.14*r*r*r;
}
// volume silinder
double volume(double r, int h)
{   return 3.14*r*r*h;
}
// volume kerucut
double volume(int h,double r)
{   return 3.14*r*r*h;
}
// volume balok
long volume(long l, int b, int h)
{   return l*b*h;
}
int main()
{   cout << volume(3) << endl;// volume kubus
    cout << volume(10) << endl;// volume bola
    cout << volume(2.5, 4) << endl;// volume silinder
    cout << volume(8, 2.5) << endl;// volume kerucut
    cout << volume(5, 10, 15) << endl;// volume balok
    system("pause");
    return 0;
}

Output:

27
1000
78.5
157
750
Press any key to continue . . .

1 thoughts on “Overloading Function

  1. Ping balik: C++ Overloading Operator: What, When, Where, Which, Why & How | OOP CPP

Send your comment