Assalamualaikum sobat, pada artikel kali ini kita akan belajar tentang fungsi
overloading pada C++, yuk simak artikel kali ini.
Apa itu Fungsi Overloading ?
Fungsi overload adalah fitur dari pemrograman berorientasi objek pada C++ yang
mana kita bisa membuat dua atau lebih fungsi dengan nama yang sama namun
parameternya berbeda. Pada fungsi overload kita membebani pekerjaan yang
berbeda pada nama fungsi yang sama. Untuk membuat fungsi overload, nama fungsi
haruslah sama dan argumen harus berbeda.
Dengan menggunakan fungsi overloading, beberapa fungsi dapat memiliki nama
yang sama dengan tugas yang berbeda-beda. Fungsi overload digunakan untuk
meningkatkan keterbacaan kode sehingga programmer tidak perlu mengingat banyak
fungsi dengan nama yang berbeda-beda. Jika kita menginginkan operasi dengan
jenis dan jumlah argumen yang berbeda namun hanya ingin menggunakan nama
fungsi yang sama, kita bisa menggunakan fungsi overload.
Contoh
int fungsiKu(int a)
float fungsiKu(float a)
double fungsiKu(double a, double b)
Pada contoh berikut, kita memiliki dua buah fungsi untuk menjumlahkan angka
dengan tipe yang berbeda:
Contoh program 1 : Tanpa menggunakan fungsi overloading
#include <iostream>
using namespace std;
int fungsiPenjumlahanInt(int a, int b){
return a + b;
}
double fungsiPenjumlahanDouble(double a, double b){
return a + b;
}
int main(){
int angkaKu1 = fungsiPenjumlahanInt(8 , 5);
double angkaKu2 = fungsiPenjumlahanDouble(4.3 ,
6.26);
cout << "Int: " << angkaKu1 <<
"\n";
cout << "Double: " << angkaKu2;
return 0;
}
Hasil program 1
Daripada kita mendefinisikan dua buah fungsi untuk melakukan hal yang sama,
lebih baik kita meng-overload (membebani) satu fungsi.
Contoh program 2 : menggunakan fungsi overload
#include <iostream>
using namespace std;
int fungsiPenjumlahan(int a, int b){
return a + b;
}
double fungsiPenjumlahan(double a, double b){
return a + b;
}
int main(){
int angkaKu1 = fungsiPenjumlahan(8 , 5);
double angkaKu2 = fungsiPenjumlahan(4.3 , 6.26);
cout << "Int: " << angkaKu1 <<
"\n";
cout << "Double: " << angkaKu2;
return 0;
}
Hasil program 2
Catatan : Beberapa fungsi dapat memiliki nama yang sama sepanjang angka dan
tipe data dari parameternya berbeda.
Untuk menggunakan fungsi overloading terdapat beberapa kondisi yang harus
dipenuhi, jika tidak maka akan terjadi error. Berikut adalah kondisi untuk
menggunakan fungsi overloading :
• Parameter harus memiliki tipe data yang berbeda
• Parameter harus memiliki jumlah yang berbeda
• Parameter harus memiliki urutan parameter yang berbeda.
Fungsi Overloading Dengan Tipe Data Parameter Yang Berbeda
Perhatikan kode program berikut
void hitung (int x, int y)
void hitung (double x, double y)
Kedua fungsi diatas memiliki nama yang sama, yaitu "hitung". Namun kedua
fungsi tersebut memiliki parameter dengan tipe data yang berbeda.
• Fungsi yang pertama memiliki 2 buah parameter dengan tipe data "integer".
• Fungsi kedua memiliki 2 buah parameter dengan tipe data "double"
Contoh Program 3 : Fungsi overloading dengan tipe data parameter yang berbeda
#include <iostream>
using namespace std;
void hitung (int x, int y){
cout << "hasil 1 = " << (x + y);
cout << endl;
}
void hitung (double x, double y){
cout << "hasil 2 = " << (x + y);
}
int main(){
hitung (5 , 8);
hitung (2.2 , 4.4);
return 0;
}
Hasil program 3
Fungsi Overloading Dengan Jumlah Parameter Yang Berbeda
Perhatikan kode program berikut :
void hitung(int x, int y)
void hitung(int x, int y, int z)
Pada kode program diatas parameternya memiliki tipe data yang sama yaitu
"integer" namun jumlah parameternya berbeda.
• Fungsi yang pertama memiliki 2 buah parameter.
• Fungsi yang kedua memiliki 3 buah parameter.
Contoh program 4 : Fungsi Overloading Dengan Jumlah Parameter Yang Berbeda
#include <iostream>
using namespace std;
void hitung(int x, int y){
cout << "hasil 1 = " << (x + y);
cout << endl;
}
void hitung(int x, int y, int z){
cout << "hasil 2 = " << (x + y + z);
}
int main(){
hitung(1 , 3);
hitung(2 , 4, 6);
return 0;
}
Hasil program 4
Fungsi Overloading Dengan Urutan Parameter Yang Berbeda
Perhatikan kode program berikut :
void hitung(int x, double y)
void hitung(double x, int y)
Pada kode program diatas :
• Fungsi pertama memiliki urutan parameter x tipe data integer kemudian
variabel y dengan tipe data double.
• Fungsi kedua memiliki urutan parameter tipe data double untuk variabel x dan
tipe data integer untuk variabel y.
Contoh program 5 : Fungsi overloading dengan urutan parameter yang berbeda
#include <iostream>
using namespace std;
void hitung(int x, double y){
cout << "hasil 1 = " << (x + y);
cout << endl;
}
void hitung(double x, int y){
cout << "hasil 2 = " << (x + y);
}
int main(){
hitung(1 , 3.5);
hitung(2.5 , 4);
return 0;
}
Hasil program 5
Sekian untuk postingan kali ini, sampai jumpa di artikel selanjutnya. Happy a
nice day...
Posting Komentar untuk "Fungsi Overloading pada C++ | Belajar C++ 30 | Tutorial C++ 30"