Ketika sebuah fungsi dengan beberapa parameter disebut, argumen akan dimasukan kedalam parameter yang di pesan. Hal tersebut dapat digambarkan seperti gambar dibawah ini
Gambar 7.6. Fungsi dengan beberapa Parameter Tambahan(nilai1,nilai2,nilai3); voidTambahan(intnum1,intnum2,intnum3) { cout<<(num1+num2+num3)<<endl; }
Fungsi dibawah ini akan menyebabkan nilai 5 dimasukan kedalam parameter num1, nilai 10 dimasukan ke dalam num2, dan 15 dimasukan kedalam num3. Untuk lebih jelasnya perhatikan instruksi dibawah ini: showSum(5,10,15); meskipun pemanggilan fungsi berikut ini akan menyebabkan 15 yang dimasukan kedalam parameter num1, 5 dimasukan ke dalam num2, dan nilai 10 akan dimasukan kedalam num3: Tambahan(15,5,10);
7.6. Passing Data by Value
Parameter khusus merupakan variabel tujuan yang ditentukan didalam tanda kurung dari definisi fungsi. Tujuan parameter tersebut adalah untuk menyampaikan informasi yng dilakukan oleh argumen dan tercantum dalam tanda kurung pada panggilan fungsi. Secara umum, ketika informasi disampaikan kedalam fungsi disebut passed by value. Hal ini berarti parameter menerima copy dari nilai yang disampaikan kepadanya. Jika sebuah parameter nilai berubah didalam fungsi maka hal tersebut tidak mempengaruhi pada argumen yang asli. Perhatikan program dibawah ini yang menunjukkan konsep mengenai passed by value. Program 7.9.
include<iostream> usingnamespacestd; voidchangeThem(int,double); intmain() { intwhole=12; doublereal=3.5; cout<<"dalamnilaimainadaIah"<<whole<<endl; cout<<"dannilairealadalah"<<real<<endl<<endl; changeThem(whole,real);//memanggilchangeThemdengan2arguments cout<<"sekarangkembalidalammainlagi,nilainyaadalah"; cout<<"semuanyamasih"<<whole<<endl; cout<<"dannilairealadalahmasih"<<real<<endl; return0; } voidchangeThem(inti,doubled) { i=100; d=27.5; cout<<"dalamfungsichangeThemnilainyadiubahmenjadi"; cout<<i<<endl; cout<<"dannilainyadiubahmenjadi"<<d<<endl<<endl; }
Pada program diatas walaupun parameter i dan f berubah dalam fungsi changeThem, kenyataannya seluruh argumen tidak diubah. Parameter i dan f hanya berisi salinan keseluruhan dan nyata. fungsi ChangeThem tidak memiliki akses ke argumen sebelumnya (original). Gambar dibawah menunjukan bahwa variabel
Next read ON halaman 8.