Penjelasan Default Parameter

Written by: Fajar   |   Updated on: Maret 3, 2018
Default Parameter

Faktanya, function parameter adalah variabel, semua karakteristik dari variabel dimiliki oleh function parameter, termasuk bahwa function parameter dimungkinkan untuk di inisialisasi. hal yang berbeda antara function parameter dan variabel hanyalah pada penempatanya.

Pengertian Default Parameter

Default Parameter adalah Function parameter yang secara default memiliki nilai dari awal (telah di inisialisasi). Default parameter memungkinkan kita tidak diwajibkan memberikan argument saat pemanggilan function. Jika kita tidak memberikan argument maka nilai pada insialisasi akan digunakan tapi jika kita memberikan argument, maka nilai dari argument kita akan digunakan.

Contoh Program

#include <iostream>
using namespace std;

void cetak(int a, int b = 0){
    cout<<"a = "<<a<<endl;
    cout<<"b = "<<b<<endl;
}

int main(){
    cetak(4);
    cetak(55,78);

    return 0;
}

Pada program di atas kita diperlihatkan kemampuan dari function kustom cetak(), yang memungkinkan kita untuk tidak memberikan argument pada function parameter b.

Secara default jika kita tidak memberikan argument pada parameter b maka nilai 0 akan digunakan. Tapi jika kita memberikan argument dengan nilai 78 pada parameter b maka nilai 78 lah yang digunakan.

Peraturan dalam default parameter

Dalam C/C++, kita dimungkinkan mengubah semua parameter pada suatu function menjadi memiliki nilai default (menjadi default parameter), tapi sebelum kita melakukan itu, ada beberapa aturan yang anda harus kita ikuti :

  1. Default parameter harus dimulai dari kanan, biasanya para programmer menaruh parameter berdasarkan tingkatan yang terpenting dimulai dari kiri, dan parameter paling opsional selalu dimulai dari kanan.

    Hal itu merupakan aturan yang wajib untuk dilakukan, karena pada Bahasa pemrograman C/C++ kita tidak dimungkinkan untuk memberikan argument secara acak.

    Asumsikan bawa anda memiliki function kustom yang memiliki 3 parameter dan satu default parameter di tengah atau di paling kiri :

    void cetak(int a, string b = “hy”, int c);
    void cetak(int a =0, string b, int c);

    tindakan di atas dilarang untuk dilakukan. Karena Function parameter selalu dimulai dari kiri dan ke kanan secara urut. Begitu pula pada pemberian argument saat pemanggilan, semua itu harus urut berdasarkan urutan function parameter yang telah di tentukan.

    Jika anda menaruh default parameter di tengah atau kiri. saat pemberian argument, anda mencoba untuk tidak memberikan argument pada default parameter, jangan berharap CPU akan mengerti parameter mana yang sedang kau coba untuk diberikan argumen dan mana yang tidak kau berikan argument.

    Cetak(1,3);
    Cetak(wow, 4);

    Kemungkinan anda sendiri juga akan bingung untuk menangani data acak seperti itu, maka dari itu CPU akan selalu menghitung argument tersebut dengan urut berdasarkan urutan function parameter.

  2. Jika menggunakan function prototype, default parameter hanya bisa didirikan pada function prototype, dan tidak bisa di dirikan dua kali pada function prototype dan definisi function.

    Contoh Program :

    #include <iostream>
    using namespace std;
    
    void cetak(int a, int b = 0);
    
    int main(){
        cetak(4);
        cetak(55,78);
    
        return 0;
    }
    
    void cetak(int a, int b){
        cout<<"a = "<<a<<endl;
        cout<<"b = "<<b<<endl;
    }

Baca :   Penjelasan dan Cara Pembuatan Class dan Object

Penulis akan mengatakan sekali lagi sebagai mindset untuk kalian, jika membuat function dengan parameter dan default parameter, ingatlah selalu membuat urutan parameter berdasarkan level terpenting yang dimulai dari kiri, Gunakanlah urutan di bagian kanan sebagai opsional parameter.

Contoh Program

#include <iostream>
#include <string>
using namespace std;

void perkenalan(string nama = "", string sapaan = "Hallo", string tanda_baca= "!"){
    if(nama == ""){
        cout<<"anda tidak memasukan nama !"<<endl;
        return;
    }

    cout<<sapaan<<" "<<nama<<" "<<tanda_baca<<endl;
}

int main(){
    perkenalan();
    perkenalan("Belajarcpp.com");
    perkenalan("Belajarcpp.com", "Hy");
    perkenalan("Belajarcpp.com", "Apa kabar,", "?");
    return 0;
}

dengan adanya default parameter kita dapat memberikan fleksibilitas penggunaan pada suatu function.

Default parameter biasanya digunakan oleh programmer sebagai pelengkap fitur overloading, Dengan adanya default parameter yang dipadukan dengan function overloading, dapat membuat suatu function lebih fleksibel saat digunakan.


One Reply to “Penjelasan Default Parameter”

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *