rachmanez

Kamis, 09 Desember 2010

BP 2 (Overloading Fungsi)

Di dalam konsep OOP terdapat fasilitas untuk melakukan overload terhadap sebuah fungsi (baik fungsi lepas maupun fungsi anggota sebuah class). Overload fungsi berarti membuat beberapa buah fungsi dengan nama yang sama akan tetapi masing-masing fungsi tersebut mempunyai tugas yang berbeda-beda. Teknik overloading fungsi dilakukan dengan menggunakan cara melakukan variasi terhadap bagian argument/parameter dan atau bagian return value (nilai balik) pada header sebuah fungsi. Sebagai contoh sederhananya yaitu sebagai berikut:


// declarations
Int add (int a, int b); //prototype 1
Int add (int a, int b,intc); //prototype 2
Double add (double x,double y); //prototype 3
Double add (int p, double q); //prototype 4
Double add (double p,int q); //prototype 5

//function calls
Cout << add(5, 10); //uses prototype 1 Cout << add(2, 8,7); //uses prototype 2 Cout << add(1.2, 10.4); //uses prototype 3 Cout << add(9, 7.6); //uses prototype 4 Cout << add(4.3, 10); //uses prototype 5 Hasil overloading fungsi secara umum dapat dilihat dari bentuk pemanggilan fungsinya. Ada juga fungsi yang dipanggil tanpa parameter atau mungkin ada fungsi yang dipanggil dengan beberapa parameter sekaligus. Dan semua itu tergantung pada kebutuhan programnya. Contoh C++: #include
class pembelian_buku
{
int jual1,jual2,q,t;
double stok1,stok2,w,r;
public:
void penjualan()
{
cout<<"masukkan nilai jual_1="; cin>>jual1;
cout<<"masukkan nilai jual_2="; cin>>jual2;
q=jual1+jual2;
jual1=0;
jual2=0;
cout<<"harga pembelian buku="<<<"\n"; }; void penjualan(int j,int s) { cout<<"masukkan nilai jual_1="; cin>>jual1;
cout<<"masukkan nilai jual_2="; cin>>jual2;
t=jual1+jual2;
jual1=j;
jual2=s;
cout<<"harga pembelian buku="<<<"\n"; }; void penjualan(double a,double b) { cout<<"masukkan nilai stok_1="; cin>>stok1;
cout<<"masukkan nilai stok_2="; cin>>stok2;
w=stok1-stok2;
stok1=a;
stok2=b;
cout<<"jumlah pembelian buku="<<<"\n"; }; void penjualan(double c,int x) { cout<<"masukkan nilai stok_1="; cin>>stok1;
cout<<"masukkan nilai jual_1="; cin>>jual1;
r=stok1-jual1;
stok1=c;
jual1=x;
cout<<"pembelian buku="<<<"\n";
};
};


void main()
{
pembelian_buku buku;
cout<<"\t=======================\t\n";
cout<<"\tPEMBELIAN BUKU\t\n";
cout<<"\t=======================\t\n";
buku.penjualan(0,0);
buku.penjualan(0.0,0.0);
buku.penjualan(0.0,0);
}

Tidak ada komentar:

Posting Komentar